Date: June 1, 2005
Chairperson: Aaron Tenenbaum
Department: Computer & Information Science
Annual Report Form for Academic Year 2004-2005
Please respond to each question. Use as much space as you need before going on to the next question.
1 What were your department’s goals as stated in the 2003-2004 annual report? To what extent were they realized in academic year 2004-2005?
a. To stabilize falling enrollment.
This goal was partially achieved. While CIS enrollment continued to fall, in line with national trends, the rate of decline has decreased. Since 1999-2000, CIS enrollment (including Core) has dropped 42%. We attribute the drop to past weakness in the economy, the dot-com collapse, and the increasing use of offshore employees for information technology development. The employment picture in the information technology sector weakened considerably in 2001-03 from its unnatural peak in the late 1990s through the year 2000, and this is reflected by fewer students seeking to enter that sector. Indeed, the UCLA survey of entering freshmen reports a 60% drop nationally in entering freshmen who plan to major in the computing disciplines.
Although the economy and the job situation have now turned decidedly upward, there is a significant lag between the upturn in the demand for workers and its effects on student enrollment. Also, the precise mix of jobs in the information technology sector has probably been altered irreversibly by the offshoring phenomenon, and our curricula will have to adjust to demand.
In addition, homeland security policies have made it more difficult for international students to study here. This particularly affects CIS graduate enrollment, which had been made up in large part by international students. Again, this is part of a well-recognized national trend.
As after past recessions, we expect CIS enrollment to regain its historical levels, although perhaps not the most recent highs, as the economic direction continues its current turn upward. We are seeing a definite improvement of employment prospects over last year, and an up tick in students entering the field is sure to follow. Long-term forecasts of IT sector employment remain high, and the field will see peaks again, despite short-term valleys. We expect that students now entering the computer science major or in the first two years of computer science study will have exceptionally good job prospects because of the shortage of supply of entry-level employment candidates in the 2006-2012 timeframe.
Another cause for the drop in CIS-assigned FTEs was the abolition of Core 5 and the institution of Core 5.1. Students are more reluctant to register for a 1.5 credit course than for a 3-credit course, especially since Core 5.1 requires two hours for only 1.5 credits. Students were also less familiar with the nature of Core 5.1 since their friends have not taken it. An additional factor is that many transfer students no longer have to take Core 5.1 because of new CUNY transfer policies. The College is steering transfers to other Core courses rather than to Core 5.1.
We are now seeing increases in Core 5.1 enrollment as it becomes an established part of the Brooklyn College curriculum. We are also seeing increased demand for CIS 1.0, the 3-credit, 3-hour alternative to Core 5.1. However, due to the drop in transfer student registration for Core 5.1, it is unlikely that the levels of FTEs will reach the historical levels for Core 5. Additionally, the coming new Core requirements will require either a 3-credit Math or CIS course. It is difficult to predict the effect of this new requirement on FTEs allocated to CIS. This will depend on the number of sections we can mount, the number of sections math mounts of its Core course, and proclivities of students between the two disciplines and to a 3-credit, 3-hour Core course versus a 1.5-credit, 2-hour version.
One way in which we have been mitigating the drop in enrollment is by expanding our service offerings for nonmajors. The percentage of departmental enrollments that are in service courses (including Core) is approaching the number in major courses. An additional tactic we are using is cross-listing courses with other departments. We have found that the mix of students in such courses is beneficial to the overall class atmosphere and intellectual discussion, as well as to FTE counts
b. To increase external funding.
This goal has been partially met. Professor Ted Raphan, whose external funding productivity is prodigious, was awarded another grant. Professors Parsons and Scarlatos received a large NSF equipment grant. Professor Eskicioglu obtained a small subcontract. However, despite significant attempts, the other members of the department have been unsuccessful in attracting external funding over the past year. There are a number of significant grant applications from department faculty currently pending, and we hope to see several of these converted into actual awards.
c. Recruiting a high-quality faculty member in graphics and/or multimedia computing.
This goal was met. We were successful in attracting Dr. Elizabeth Sklar from the faculty at Columbia University. Dr. Sklar, who specializes in robotics, adds an extra dimension to our multimedia activities.
d. Progressing in introducing an undergraduate major in Multimedia Computing.
This goal was met, though at a slow pace. Our letter of intent, which was sent to the College Administration last Spring has now been approved by the administration and by Faculty Council. It has now been sent to CUNY for approval. Once CUNY approves the letter of intent, we can begin work on submitting a full proposal.
e. Obtaining space for a multimedia research laboratory and a robotics laboratory.
This goal was partially met. Room 130cNE is being used as a multimedia laboratory. Additionally, there has been agreement on space for a robotics laboratory to be shared by Profs. Parsons of CIS, and Grasso of Psychology. The department also made available space for a temporary robotics laboratory for our new recruit, Prof. Sklar in 4412N. The Administration has assured us that it will work to allocate a more permanent suitable laboratory for Prof. Sklar during the next academic year.
f. Obtaining space for a larger CIS seminar room to hold our growing faculty, and instituting a CIS faculty lounge.
This goal has not been met. The need for a larger CIS meeting room is evident at every department meeting. An attempt to use rooms in SUBO was unsuccessful, due to cost and configuration.
2 What were the major events of the year for your department?
a. Significant progress was made in establishing the Core offerings in computer science.
Core 5.1 is now offered regularly in multiple sections. We ramped up the number of sections in the past year, and have reached a steady state. CIS 1.0 is also offered regularly.
b. Continuing falling enrollment.
See item 1a. As prior students complete their major, and fewer students register for the rigorous first programming course, enrollment continues to drop. We anticipate that we will hit bottom in 2005-06, and then slowly turn around.
c. Curricular changes
Our curriculum continues to change, as technology advances. Perhaps most significant, we introduced a writing-intensive computer ethics course, jointly with the Department of Philosophy. This course will be required for our major. Such a course has been advocated by an external CUNY-wide advisory committee to the computer science disciplinary committee.
In addition, the CUNY external committee advocated increased business awareness among our students. We have cross-listed an additional two Business courses in CIS: Technology Management (BUS 51.8 / CIS 9.50) and Operations Management (BUS 31.4 / CIS 10.31) in addition to our Electronic Commerce course (CIS 3.2 / BUS 31.5)..
Additionally, we have introduced two new multimedia computing courses, CIS 17 (introduction to Multimedia Programming) and CIS 36 (Multimedia Coding and Compression).
We also cross-listed a new course (BIO 33 / CIS 10.33) with Biology. This course is our first offering in Bio-informatics, an area that is becoming increasingly important at the forefront of both disciplines.
We also streamlined our major requirements, so that students choose courses from a range of numbers, rather than from a long list of specific courses that is constantly changing as courses are added and dropped.
We offered two advanced special topics courses during the course of the year, one on Quantum Computing, and one on Databases and Advanced Java Programming.
We have sent to 80th Street a Letter of Intent for a Bachelor’s Program in Multimedia Computing.
In the graduate area, we have introduced two new courses, CIS 717.5 (Multimedia Databases) and CIS 739 (Computer Security). We have also done away with the requirement of the General GREs for entry to our graduate programs. This requirement was cumbersome to administer, and did not noticeably improve our programs.
d. Continued progress on the SmartTutor project.
This goal was met. SmartTutor development has been proceeding in a wide variety of subjects, as outlined below. After each description of status, is a list of the contributors to that set of modules:
The original concept map is still being filled in and expanded—including examples and test questions. This year a version of Code-Lab is being integrated into the program to provide many additional examples. We plan to have the updated CIS 1.5 completed and on line by the end of the spring semester. Keith Harrow, Jackie Jones, David Arnow, George Medvedkov
A substantial website that supports Core 1, especially the Iliad, has been completed and is being reviewed by the classics department. Materials on other Core 1 readings have been done, and they will be expanded and added to the website next year. We plan to have the Iliad on line by the end of the spring semester. Jane Belton, Donna Wilson, Nicholas Pitsirikos
A concept map and substantial amount of material in support of gateway economics courses has been completed and is now being reviewed and edited by Jane (on employment, inflation, and taxes). We plan to show this new website to economics faculty in a week or two, and hope to have it on-line by the end of the semester. Jane Belton, Joe Francis, Dmitriy Chudnovskiy
This year a major writing site was developed—made up of links to effective materials at OWLs across the country. That is currently on line. Two projects are in progress. Lilia Melani is working on a template that will help students understand how to cite references in research papers (Bobby Gagliardi) and two writing fellows are designing a format for showing students examples of successful essays and research papers. We hope that both projects will be on-line by the end of the spring semester. Jane Belton, Lilia Melani, grad fellow.
Redesigning the On-Line LC main pages
We have been working on a redesign of the on-line LC main pages. Several possible versions were developed and faculty, students and tutors were queried (some with a formal questionnaire). We hope that this process will be completed by the end of the spring semester and that the site has a newly designed main page (with appropriate back-up pages). Oksana and Jane Belton.
Laurel Cooley is supervising the redesign of an extensive math website that were developed for us several years ago by a graduate student. Laurel feels that the new website will be innovative and effective. Work is in progress. Guillermo Creus.
A very innovative and interesting set of materials has been developed in support of Bio 17, but work on the website has recently been stalled by our inability to extract information from a former tech assistant’s website. Ronald Eckhardt, Danny Kopec,
A considerable amount if material has been developed for a calculus website—made up of extensive examples. Jane is currently looking into what we have to do to put this material on-line this semester. Marvin Kohn, Shai Silver.
Mark Kobrak has reported that he is going back to an earlier plan for designing the gateway chemistry website. He will report on his progress. Aalia Rafique
We have a concept map, definitions of key terms, and information on title pages, methods, abstracts, introduction and discussion. The content still needs to be put into html/flash. Robert Emikule Greene.
Charles Sirmans worked on the project last semester. We have a concept map and work on an Introduction,Computer Architecture, HTML the Internet and WWW. There is a great deal of text and some good visuals. We need to make the pages more consistent and to add content,
Files that were set up by a Carnegie-Mellon student in summer 2004, have been translated to a web program. The topics are kinematics and energy. Harry Kwan, Yevgeny Abov.
e. The introduction of robots in some of our classes.
The Student Technology Fee was used to purchase several robots for instructional purposes. These have been used in sections of both CIS 26 and Core 5.1, with great success. Students enjoy programming these robots and display heightened interest in the class. We expect to expand this activity in the year to come.
f. The move of the ITS computer labs to the Field building.
This move has gone very smoothly, and has given us an additional computer classroom. However, our students have expressed a need for CIS-enabled workstations in the central campus. We are investigating this possibility.
g. Research of the Metis group in distributed computing
The Metis cluster is composed of 15 PC's running Debian Linux coordinated by the Mosix distributed operating system. The faculty members that participate in the project are Dayton Clarke, James Cox, Scott Dexter, Murrary Gross, Paula Whitlock and Noson Yanofsky.
Progress in 2004-2005:
Testing of the Brooklyn College version of the parallel Haskell compiler on the Metis cluster has led to publication of a paper on performance improvement* and several poster presentations by Lori Collins, a graduating Masters candidate. Meanwhile, work continues on debugging the compiler's run-time system, which still contains a number of disabling errors.
Ahmed Ali, a graduating senior, has installed and tested a quantum computing simulator and will continue this project as part of his Master’s studies this coming fall. Our plan is to parallelize this simulator to run on the Metis cluster, and to extend the quantum computing language supported by this simulator.
We have installed the Subversion version control system and a web interface. Current archives on file are the Brooklyn College Haskell compiler, our quantum simulator, and source code for SWC. We are prepared to permit use of the archive on request by others with legitimate needs for software-configuration management.
A CD writer has been installed on one cluster machine, and a troublesome hub has been replaced by a small gigabyte switch. If we can find funds, we intend to replace our power-hungry and obsolete Cisco switch over the next year.
As in past years, Metis participants have nailed down plum competitive post-graduate offers: One of our participants has been offered a fellowship at Oak Ridge National Laboratories, and another has taken a position with Google In previous years, we have placed Metis participants in Microsoft, the Museum of Natural History, Bloomberg, Rutgers, and Vonage.
*'Improving Performance of Distributed Haskell in Mosix Clusters' Lori Collins, Murray Gross and P.A. Whitlock, Lecture Notes in Computer Science, Vol. 3516, ed. V.S. Sunderam, G.D. van Albada, and P.M.A. Sloot, (Springer-Verlag, 2005) pg. 983. http://dx.doi.org/10.1007/11428862_153
h. Establishment of a Long-Range Planning Committee for the Department
We have established a Departmental Long-Range Planning Committee to discuss major initiatives and revisions in department activities. The majority of the members of this committee are relatively newer faculty, who have a longer-term stake in its welfare. The establishment of this committee can be seen as a first step in a gradual transition of department governance from the “first generation” of the department, hired in the 70s and 80s, to the new generation of the late 90s and the 21st century.
The Committee has submitted a first report, and will continue its activities throughout next year.
3. Discuss your department’s activities in the following areas:
a. curricular change
See item 2c above.
b. participation in the Core
CIS offers two versions of its Core course: Core 5.1, which is a 1.5 credit, 2-hour course, and CIS 1.0, a 3-hour, 3-credit version. Both courses are quite popular, and are great successes. Students and faculty both enjoy the courses.
In the new Core, CIS will teach a 3-hour, 3-credit course, much like CIS 1.0, that will be an alternative with a Math course in satisfying a Core requirement.
c. developing new programs and discontinuing old ones
We have developed a letter of intent for a Bachelor’s Program in Multimedia Computing that has been approved by the College and sent to CUNY.
We are actively considering whether or not to continue the MS Program in Computer and Information Science and Health Science. Student demand for this program has historically been very low, and Admissions to the Program have been discontinued. However, recently there have been signs of increased student interest. Unfortunately, while some of our faculty members are interested in the Program, there is no focal faculty member in Health and Nutrition Sciences for the Program due to resignations, leaves, and lack of new lines.
d. participation in faculty development, including the use of educational technology
As members of a computer science department, our faculty naturally keeps up with the latest technologies, including educational technologies. Many of our courses have a Web presence, and we teach our students use of the Web in several courses (Core 5.1 and CIS 3, 3.1, 13.2, 26, 52, 53, 751 and 752).
e. any modifications in departmental organization
An Outcomes Assessment Committee was formed consisting of Profs. Kopec (chair), Augenstein, and Gurwitz.
A Long-Range Planning Committee was formed, consisting of Profs. Rudowsky (chair), Chopra, Scarlatos, Parsons, Clark, Sokol, Weiss, Bar-Noy and Cox.
There were no other changes.
f. improvement of services to students
We have Deputy Chairs for day (Yedidyah Langsam), for evening (Joseph Thurm) and for graduate students (Danny Kopec), who hold regular office hours. We have extensive Advice brochures (accessible from http://www.sci.brooklyn.cuny.edu/cis/) for our students. We also maintain a large email list for our majors. Many courses also have mailing lists. In addition, each semester before registration, we mail a packet of registration advice to our major students. We also do a mailing to students in our non-major courses, inviting them to take additional CIS service courses.
We are constantly updating our curriculum and offering new courses to our students. Recently, we began offering Honors Research opportunities to our students under the new course rubrics, CIS 88.1 and 88.2. An increasing number of students are taking advantage of this opportunity.
The Atrium and Wolfe computer laboratories and associated computer classrooms recently moved to the Field Building. There are advantages and disadvantages to this move. One disadvantage is the distance from Ingersoll and the central campus. This does not make it as conducive for students and faculty. The other disadvantage is the temporary nature of the building. The advantages are: it enables more computer availability in a single expanse, it adds another computer classroom, and it expands and improves the format of the existing computer classrooms.
We also email our students regular information about internship and job opportunities, particularly those offered through the New York Software Industry Association.
g. reaching out to your majors and advising your students
See item f above. The availability of Degreeworks is also very helpful in advising students.
h. increasing faculty diversity
We have hired a female faculty member in our recent search. Three female faculty members have joined our faculty within the past five years.
It has been very difficult locating minority faculty who wish to come to Brooklyn College. Although we had recommended several such candidates in past years, Brooklyn College was unable to attract them, and they went to other schools that were offering better recruiting packages. We will need to do better institutionally if we are to make progress in this area.
i. increasing curricular diversity
Within the field of computer science, we have one of the most diverse curricula in the city. The technical nature of the field makes population diversity an unlikely subject for our courses.
j. reviewing, assessing, re-vitalizing good programs
We have formed a Long-Range Planning Committee to assess and revitalize our programs. We are also very active in establishing program assessment in our department. Next year, we will undergo a self-study and an external evaluation.
k. funded research
Professor Theodore Raphan continues to be the largest grant recipient in the College, with over $1 million in funding per year, primarily from NIH.
Professors Parsons and Scarlatos have received an NSF grant for establishing a virtual environment.
Professor Bar-Noy has a small grant from the State.
Many of our faculty have PSC-CUNY grants, and many have submitted external grant proposals.
l. involvement of students (undergraduate, masters, doctoral) in research.
We have continued offering honors research courses (CIS 88.1 and 88.2), and undergraduate students have done research with Profs. Eskicioglu, Whitlock, Dexter, Chopra, Parsons, Kopec, Harrow, Scarlatos, Sokol, Cox, and Raphan. Several Master’s students are writing research theses, and our doctoral students all do research. Students have co-authored a number of scholarly papers. Approximately 10 students are involved in the METIS research effort, and several are involved in SmartTutor.
4. Describe your Outcomes Assessment plan. Be sure to include your learning objectives-courses grid as well as a chronology of assessment goals.
The Department of CIS has developed a mission statement, learning objectives (or goals) for our undergraduate major, and we have developed a learning objectives-courses grid for our required courses in the major. We have also defined course objectives for all the required courses, and we are in the midst of identifying which course objectives promote which program goals for each course. In order, here are the products of that activity:
a. Mission Statement
The mission of the Department of Computer and Information Science of Brooklyn College is to develop and maintain high-quality research and educational programs in computer and information science. The department is committed to transmitting and expanding knowledge in both fundamental and applied areas and in the growing number of interdisciplinary fields that computing encompasses and impacts. The department is also committed to maintaining an awareness of the current and anticipated needs of the community that it serves. To achieve this mission, the department provides degree programs to part-time and full-time students as well as a wide range of research opportunities at the undergraduate, graduate and doctoral levels. These opportunities are provided within the framework of a collegial environment with equal opportunities for all faculty, staff and students.
Departmental programs include the following:
Educational programs that:
· Present fundamentals of computer and information science that foster disciplinary and intellectual maturity,
· Promote analytical and critical thinking,
· Emphasize knowledge that is relevant to technological innovation and business needs,
· Prepare students both for the job market and advanced studies, and
· Provide computer and information science courses for students who are in other programs at the College.
Research opportunities that:
· Foster leading edge research in the major areas of computer and information science, and
· Encourage students to participate in research relevant to industrial or academic careers.
b. Program Goals and Goals-Courses Grid
See next pages.
.
B.S. Program in Computer and Information Science |
|
|
|
|
|
CO |
UR |
SE |
S |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
Program Goals for Students |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
88.1 |
|
1.5 |
4.1 |
11 |
15 |
22 |
23 |
24 |
25 |
26 |
27 |
28 |
38 |
60.1 |
1. To develop problem-solving skills |
X |
X |
X |
X |
X |
X |
|
|
X |
|
|
|
X |
2. To develop skill in computer programming |
X |
X |
|
X |
X |
|
X |
X |
X |
|
|
|
X |
3. To gain skill in at least two programming languages |
X |
X |
|
X |
X |
|
X |
|
X |
|
|
|
|
4. To learn at least two different programming paradigms |
|
|
|
|
X |
|
X |
|
X |
|
|
|
|
5. To understand different-base number notations and how numbers and characters are represented in a computer |
X |
X |
|
|
|
|
|
|
|
X |
X |
|
|
6. To gain familiarity with the history of computing |
X |
X |
|
|
|
|
X |
X |
|
X |
X |
X |
|
7. To understand the parts of a computer and how they work together to perform computation |
X |
X |
|
|
|
|
|
X |
|
X |
X |
|
|
8. To understand the stored program concept, its strengths in performing computation, and its limits |
X |
X |
|
X |
|
|
|
|
|
X |
X |
X |
|
9. To be able to develop algorithms and transform the algorithms into programs
|
X |
X |
|
X |
X |
X |
|
|
X |
|
|
|
X |
10. To utilize appropriate algorithms for sorting and searching |
X |
|
|
|
X |
X |
|
|
|
|
|
|
|
11. To be able to analyze the efficiency of algorithms and programs. |
|
X |
|
|
X |
X |
|
|
|
|
|
|
|
12. To be able to compare two algorithms and programs for relative efficiency in terms of both time and space |
X |
|
|
|
X |
X |
|
|
|
|
|
|
|
13. To understand the limits of computation |
|
|
|
|
|
X |
|
|
|
|
|
X |
|
14. To understand recurrences and recursion and recognize problems that can be solved via recursion |
|
|
X |
X |
X |
X |
|
|
|
|
|
|
|
15. To be able to formulate formal logical propositions and perform simple proofs |
|
|
X |
|
|
|
|
|
|
|
|
X |
|
16. To understand the implementation and application of queues, lists, trees and graphs and their use in developing programs |
|
|
|
|
X |
X |
|
|
X |
|
|
|
|
17. To understand the organization of a computer operating system |
|
|
|
|
|
|
|
X |
|
|
X |
|
|
18. To understand the implementation of programming languages |
|
X |
|
|
|
|
X |
|
|
|
|
|
|
19. To gain breadth in several areas of computer science such as artificial intelligence, multimedia computing, methods of simulation, computer networking, database organization, and system simulation |
|
|
|
|
|
|
|
|
|
|
|
|
X |
20. To apply classroom skills by doing internships and research projects with professors and external institutions |
|
|
|
|
|
|
|
|
|
|
|
|
X |
21. To gain the knowledge and skills to educate themselves as computer science continues to evolve |
X |
X |
X |
X |
X |
X |
X |
X |
X |
X |
X |
X |
X |
22. To utilize effective documentation techniques |
X |
X |
|
X |
X |
|
|
|
X |
|
|
|
X |
c. Course Objectives
The following have been established as the course objectives for the required courses in the program:
CIS 1.5 Course Objectives
By the end of this course, students should
a. Understand the concept of a program (i.e., a computer following a series of instructions)
b. Understand the concept of a variable holding a value, how a variable is declared and how it can change
c. Understand the concept of a loop – that is, a series of statements which is written once but executed repeatedly- and how to use it in a programming language
d. Be able to use a conditional statement to select a choice from two or more alternatives
e. Be able to break a large problem into smaller parts, writing each part as a module or function
f. Be able to use an array to store multiple pieces of homogeneous data, and use a structure to store multiple pieces of heterogeneous data
g. Be able to work with both character and numerical data
h. Understand the concept of an algorithm (that is, a series of steps that can be carried out in a mechanical way) and a few specific examples of algorithms (for example, finding an average, sorting, searching)
i. Understand the parts of a computer system and how they interact
j. Understand the concept of a program in a high-level language being translated by a compiler into machine language program and then executed
By the end of this course, students should be able to
a. understand the difference between registers and memory, the association of registers with segments, and the implementation of segmentation for X86 based computers
b. understand the relationship of assembly language and the architecture of the machine; this includes the addressing system, how instructions and variables are stored in memory, and the fetch-and-execute cycle
c. use basic assembly language instructions
d. understand the role of interrupts in performing I/O
e. declare and use variables, and write a structured assembly language program
f. write and use functions, and understand how function calls are carried out, including passing parameters
g. understand the relationship between high level constructs such as loops, if-else, functions, arrays, and structures, macros, and their underlying representation; be able to write those constructs in assembler
h. know how to call an assembly language routine from a high level language and vice versa
i. do conversions and basic arithmetic operations in the binary, decimal and hexadecimal bases, and convert numbers to two's complement notation; use hex to calculate offsets and addresses
CIS 11 Course Objectives
By course-end the student will be able to understand and use:
a. Logical propositions (including quantifiers).
b. Simple proofs of mathematical statements (mathematical induction, indirect
arguments).
c. Functional and relational properties (one-to-one, onto, reflexive, symmetric,
transitive, equivalence, partial ordering), and operations (composition, transitive
closure).
d. Basic matrix operations.
e. Fundamental concepts of set theory and Boolean Algebra.
f. Counting principles, countable and uncountable sets.
g. Basic probability theory and applications.
h. Recursive definitions and solutions of simple of recurrence relations.
i. Graph algorithms and their application to computer science.
j. Tree traversal algorithms.
Course Objectives for CIS 15
Upon completing the course, the student will be able to:
a. interpret program specifications and test their implementation,
b. write programs using a core portion of the C run-time library including: input/output, string conversion and manipulation, dynamic memory allocation, environment access;
c. program effectively with pointers, arrays, structures, and dynamically allocated memory and describe their internal representations;
d. discuss the consequences and relative merits of compile-time and run-time memory allocation;
e. employ a modular approach to program development by effective use of C's support of separate compilation including header files and external and static declarations;
f. discuss the machinery of compilation and execution, including compilation phases, object modules, link editing, and program execution;
g. implement recursive solutions to problems and demonstrate how recursion is implemented by drawing diagrams of and tracing changes in the runtime stack;
h. implement generic functions using function pointers and utilize generic functions in modular program development;
i. to describe the internal representation of C's primitive data types and strings using byte diagrams; and
j. use the programming environment offered by a Unix-like system including writing scripts that employ its utilities and writing programs that utilize its programming interface.
By the end of the course, students should be able to:
a. Demonstrate understanding of the abstract properties of various data structures such as stacks, queues, lists, and trees.
b. Use various data structures effectively in application programs.
c. Implement various data structures in more than one manner.
d. Compare different implementations of data structures and to recognize the advantages and disadvantages of the different implementations.
e. Demonstrate understanding of and be able to program various sorting algorithms, including bubble sort, insertion sort, selection sort, heapsort and quicksort.
f. Compare the efficiency of various sorting algorithms in terms of both time and space.
g. Program multiple file programs in a manner that allows for reusability of code.
h. Trace and code recursive functions.
i. Know features of C++ and be able to program with C++ classes.
j. Demonstrate some understanding of object-oriented programming.
By the end of the course, students should:
a. Demonstrate an understanding of the growth of functions and the hierarchy of complexity classes.
b. Demonstrate an understanding of the use of O, Ω, and Θ notation.
c. Demonstrate an understanding of the concepts of worst-case and average-case performance, upper and lower bounds.
d. Be able to analyze the complexity and efficiency of an algorithm in terms of time and space.
e. Demonstrate knowledge of algorithms for order statistics.
f. Demonstrate knowledge of several algorithms for sorting and be able to compare their complexities.
g. Demonstrate an understanding of various design techniques such as divide-and-conquer and greedy methods.
h. Demonstrate knowledge of different methods for representing a graph.
i. Be able to trace, implement, and analyze graph algorithms such as traversals, finding a minimum spanning tree and finding the shortest path.
j. Be able to demonstrate an understanding of the nature of the classes P, NP, and NP-complete, be able to define several problems that belong to these classes and be able to prove their classification.
Course Objectives for CIS 24
Upon completing the course, the student will:
a. be able to describe the salient characteristics of several language paradigms (procedural, object-oriented, imperative, declarative/logic, functional).
b. understand the concept of data binding and its effect upon the semantic level of the language.
c. be familiar with standard mechanisms of realizing language semantics at execution time.
d. understand the spectrum of source-to-executable language translation, its effect upon efficiency and expressivity the corresponding relation to data binding.
e. be able to use formal techniques (such as BNF) in the specification language syntax.
f. be able to recognize the relationship between the semantic level of the language and its expressivity, efficiency, control mechanisms, and data types.
g. be able to apply the conceptual material covered in this course (i.e. , binding times, run-time support etc.) to the analysis of specific languages.
h. be able identify the core semantics of data types and control constructs and to recognize the similarity and differences between data and control representations of various languages.
i. be able to code small programs that illustrate the core semantics of each of set of languages that represent the paradigms covered in the course.
j. be able to discuss the technological, software-engineering, and educational issues that propelled the evolution of programming languages.
By the end of this course, students should be able to:
a. demonstrate the ability to write a large program (with subprocesses) that implements techniques taught in the course.
b. demonstrate understanding of the file system, secondary storage management and disk scheduling algorithms.
c. demonstrate understanding of the principles of multiprogramming.
d. demonstrate understanding of the methods of inter-process communication and synchronization.
e. demonstrate understanding of the issues of deadlock and its solutions.
f. demonstrate understanding of memory management and virtual memory.
g. demonstrate understanding of processes and threads.
h. demonstrate understanding of CPU scheduling and long-term scheduling.
i. demonstrate understanding of the various forms of I/O device interaction with the operating system (e.g., interrupts).
j. demonstrate understanding of the basics of computer security.
By the end of this course, students should be able to:
a. Understand and apply the concepts of class, object, instantiation,
and methods.
b. Understand and apply the concepts of data abstraction, inheritance
(single and multiple), and polymorphism.
c. Write applications in an object-oriented language.
d. Understand an use run-time exceptions.
e. Understand and apply the basic concepts of file I/O.
f. Understanding and apply the concepts of multi-threading.
g. Understanding and apply the concepts of event-driven programming.
h. Evaluate the appropriateness of a specified class hierarchy for a
given task.
CIS 27 Course Objectives
By the end of this course students should be able to:
a. Understand the organization and architecture of a computer.
b. Understand the components of a computer system.
c. Understand component interconnection.
d. Understand computer memory systems.
e. Understand computer input/output operations and interfacing.
f. Understand computer arithmetic operations.
g. Understand computer instruction sets.
h. Understand central processing unit organization.
i. Understand CPU control unit operation and implementation.
CIS 38 Course Objectives
By course-end, students will be able to:
a. Understand the difference between deterministic and non-deterministic
finite state automata
b. Design deterministic and non-deterministic finite state automata for
language recognition (and minimize them)
c. Devise regular expressions for languages
d. Design push-down automata for language recognition
e. Use the pumping lemma to classify languages as not regular
f. Design simple context-free grammars
g. Design simple Turing machines
h. Understand the limits of computation via the halting problem and the
Church-Turing thesis
i. Understand the basic concepts of the theory of computational complexity
j. Understand reducibility among problems and complexity classes.
CIS 60.1 Course Objectives
By the end of this course, students should:
a. Have developed skills in computer programming.
b. Have developed skills in developing algorithms and transforming algorithms
into a plan for solution.
c. Gain breadth in several areas in computer science.
d. Be able to identify the goals, methods, tools and outcomes of a project.
e. Be able to communicate effectively.
f. Be able to record and document the results of the project.
g. Have an understanding of the project life cycle, including how milestones are noted, monitored and revised.
By the end of this course, students should:
a. Be able to apply problem-solving and programming skills.
b. Be able to communicate effectively.
c. Have acquired a fundamental understanding of how the relevant branches of computer science are used in a research project.
d. Be able to identify the goals, methods, tools and outcomes of a research project.
e. Be able to express in writing the motivation of a research project, including an overview of the background and the ongoing work with references.
f. Become an efficient user of the methods and tools used in a research project.
g. Be able to record, document, and present new findings of a research project as soon as they are obtained through observation, computation or experimentation.
h. Have gained an appreciation for ambiguity, complexity and randomness in solving problems.
i. Have created new knowledge based on the synthesis or analysis of the new findings of a research project.
10. What resources, including special equipment, were obtained last year by your department?
Our Core 5.1 laboratory was upgraded with new computers from the Student Technology Fee funds.
Our network was significantly upgraded from research overhead funds.
Prof. Raphan used grant funds to buy parts for computers that he assembled in-house for use in research, saving a great deal of money and often producing better machines than he could obtain assembled commercially.
Prof. Parsons was successful in obtaining two sorts of robots:
1. Many Lego Mindstorms robots (fromGRTI startup funds and from student technology money). There is a big yellow Lego brick, which you connect to motors and various sensors (all of which are Lego components) to build you own little robot which runs around the floor. You write computer code for it (in Java or C++) on a PC and download the program into the robot using an infrared light interface. We use these Lego robots primarily for teaching, both in Artificial Intelligence (where students use them to write programs that illustrate simple AI techniques), and in introductory programming classes (where students write robot programs that make use of the programming constructs that they are learning).
2. Eight Sony AIBO robots (which look like small dogs). Four of these were funded by startup funds and 4 more by some additional GRTI from the Dean's office. We use these mainly for research; we program them to play soccer and take part in RoboCup (www.robocup.org), a series of international competitions on robotics soccer. We placed 4th at this year's US Open (just behind U Texas at Austin, CMU and UPenn). Despite the whimsical nature of the task, playing soccer illustrates many of the cutting edge research problems in robotics and important science emerges from the activity. We also use the AIBOs to teach introductory robotics.
More on both kinds of robot at:
http://www.sci.brooklyn.cuny.edu/~parsons/courses/840-fall-2004/
11. Describe your efforts to secure funding for:
a. professional development
None.
b. research
Department faculty are constantly submitting grant proposals for research projects. Over 20 such proposals were submitted in 2004-05.
c. student scholarships
Professors Chopra, Scarlatos and Parsons, together with Dean Hainline, are actively developing an NSF proposal for Broadening Participation in Computer Science.
d. support of departmental goals.
See item c. above.
5. Discuss your department’s participation in the following:
a. collaborations/partnerships and/or interdisciplinary programs with other departments, colleges, or levels of education (i.e., K-12 or doctoral)
We are partners with the five Arts departments in the PIMA program.
We collaborate with the Department of Mathematics in the joint undergraduate computational mathematics major.
We collaborate with the Department of Health and Nutrition Sciences in a joint M.S. program in Computer Science and Health Science.
We collaborate with the Department of Economics in a joint B.S. – M.P.S.program in CIS and Economics.
We collaborate with the Departments of Philosophy and Psychology in the Minor in Cognitive Science.
Professor Chopra taught Honors College 3 for the CUNY Honors College in Fall 2004.
Professor Kopec participated in the Arts of Democracy project with a version of his course, CIS 3.2, Electronic Commerce.
We have joint courses with the Departments of Art, Biology, Philosophy, Psychology, Sociology, Economics, Health and Nutrition Sciences, and the School of Education. During 2004-05 we introduced joint courses with Philosophy (CIS 12W / Philo 14.4W), Biology (CIS 10.33 / Bio 33), and Economics (CIS 9.50 / Economics 51.8; and CIS 10.31 / Economics 31.4).
We offer CIS 5.2, required of majors in Accounting and Business. CIS 1.5 is required of majors in Mathematics, for the Bachelor’s degree in Physics and for the B.S. degree in Chemistry.
We participate in the Coordinated Engineering Program.
Our SmartTutor project in the Learning Center involves numerous other departments including Biology, Economics, Psychology, Mathematics, Chemistry, and Physics.
Professor Lori Scarlatos has a joint grant with the School of Education and with SUNY Stony Brook.
Our department plays a prominent role in the CUNY PhD program in computer science. Most of our faculty are also doctoral faculty in this program. Distinguished Prof. Rohit Parikh is also a member of the Doctoral Programs in Mathematics and in Philosophy, and Distinguished Prof. Theodore Raphan is also a member of the Doctoral Program in Psychology.
Many students in our CIS 60.1 course do projects for other departments and offices in the College.
b. teacher education programs
Through our participation in the Core, we help educate prospective teachers in fundamental principles and applications of computing.
Prof. Scarlatos participates with the School of Education in training students in multimedia applications.
We also have an undergraduate course, cross-listed with Education, titled Computers in Education.
c. multicultural activities
None.
d. community programs
Many students in our CIS 60.1 internship course do projects for community organizations and firms.
e. distance or distributed learning projects
Many of our courses utilize Web sites for asynchronous distance learning. The
SmartTutor effort (see item 2d) is an example of distributed learning.
f. multimedia projects
We have a minor in multimedia computing and a large number of multimedia courses (CIS 3.1, 17, 36, 45.1, 49.3, 52, 54.1, 717.5, 751, 752, and 769). We have introduced two new multimedia courses during 2004-05. We also participate in the PIMA program. In our M.A. program we have a multimedia computing concentration. We are also proposing an undergraduate major in multimedia computing.
g. other college-wide or university initiatives
Professors Tenenbaum, Langsam, Harrow, Jones, Raphan, Yanofsky, Clark and Kopec are all members of Faculty Council. Professors Langsam, Tenenbaum, Eskicioglu, Harrow, Whitlock, Jones, Rudowsky, Cogan and Clark were all members of Faculty Council committees in 2004-05, and Profs. Langsam, Harrow, Tenenbaum and Rudowsky chaired their respective committees. A similar presence of CIS faculty in Faculty Council committees is scheduled for 2005-06.
Professor Tenenbaum was a member of the Outcomes Assessment Steering Committee and of the Core Revision Committee. He was recently appointed to the Search Committee for an AVP of Technology. He also served on the Subcommittee on Graduate Programs for the Strategic Plan Committee. In addition he chaired a subcommittee of the TLTR investigating certifying our students in information literacy and computer literacy.
Professor Augenstein is a long-time member of the College Review Committee.
Prof. Harrow now serves as Chair of the Brooklyn College Chapter of Phi Beta Kappa.
h. activities sponsored by Student Life.
The Department of CIS sponsors a student Programming Team, which is an official College club. The team competes, fairly successfully, in regional programming contests. .
9. Describe how your department acclimates its new faculty and adjunct faculty to the department and to the college? (For example, does your department offer new faculty any orientation to courses, orientation to students, welcome to the department, course handbooks, etc.?) If you distribute any materials that you think might be useful or serve as models for other departments, please list here and send hard copy to the Assistant Provost.
New faculty receive released time and startup funds. New faculty, or any faculty who are teaching a course for the first time, are referred to another faculty member who has taught the course for orientation in the course and transmittal of its traditions and role in the curriculum. Faculty are also pointed to our website http://www.sci.brooklyn.cuny.edu/cis/, where they can find information on our curriculum and on other faculty members. New faculty members are added to our faculty email lists, and email and in-person discussions among the chair, prior faculty and new faculty are going on constantly.
10. Indicate the noteworthy faculty accomplishments, honors, or awards in your department in the areas of:
a. teaching
b. curriculum development
c. research and scholarship (Provide 3 key words that capture each faculty member’s research/scholarship interests.)
d. grant funding and proposal preparation/submission
e. publication of books and/or articles (Highlight all publications in which undergraduate and masters-level students appear as co-authors.)
f. service to the department, college, university, or community
g. professional travel, presentations at conferences (Highlight all presentations in which undergraduate and masters-level students are listed as co-authors of abstracts and/or co-presenters.)
h. involvement with national disciplinary trends.
For items a.-h., please see the Appendix.
i. Would you welcome a program that enables individual faculty to answer these questions themselves and submit the results simultaneously to you and to the Assistant Provost?
We would welcome such a program, provided that someone else, not the Chair, is responsible for hounding faculty members for their responses. If no one follows up, then the information will not be forthcoming. If the Chair follows up, there is no advantage to me over the current system.
10. Indicate how your department helps promote the three major goals of the Brooklyn College Strategic Plan:
The following discussion follows the goals listed in the Strategic Plan, numbered as they appear in the Plan.
a. to maintain and enhance academic quality
The major contribution of the Department of Computer and Information Science is in this area. We believe we have a high-quality program that can yet be enhanced in a number of ways. We must be vigilant and assure appropriate resources to enable us to maintain and enhance our program quality.
I(1) Define programmatic goals and refine assessment and evaluation procedures.
We plan to continue to work towards the possibility of obtaining accreditation for our undergraduate major. The major impediment is the low percentage of courses that are taught by full-time faculty. The College has been allocating additional lines to CIS and we hope that, with continuation of that policy, we will be able to seek accreditation. Accreditation is becoming increasingly important in the outside world in certifying the qualifications of information technology professionals.
We plan to continue working to implement recommendations of our 1997-98 external evaluation. This year, we have proposed a BS program in Multimedia Computing, an outgrowth of that external evaluation process.
We are making good progress in developing outcomes assessment procedures for our majors, although the large number of sections we teach and the large number of adjuncts we use make this difficult. Outcomes assessment is also essential to accreditation, and its current absence in our department is an impediment to any accreditation effort.
I(2) Identify programs of established and potential national distinction and build such programs.
We believe that the department's undergraduate major is a program of distinction. Employers and graduate schools rate our students highly, and our graduates are much in demand. The breadth and depth of our undergraduate program are, we believe, unequaled in the Greater New York area. From both a quality and a budgetary point of view, further college investment in the Department of CIS should yield exceptional results and further prestige for the College.
Our recently instituted joint programs in Cognitive Science (with Philosophy and Psychology) and in Performance and Interactive Media Arts (with Music, Theater, Art, TV Radio, and Film Studies) are forward-looking projects that meet the needs of the academic community and of society. They have the potential of true excellence if they are done right.
I(3) Continue to build a faculty that will assure the College's ranks among the best Liberal Art institutions.
It is particularly difficult to hire top-quality faculty in Computer Science due to the high national demand for faculty in the area. Salary and workload incentives are essential. With such incentives, there is no doubt the College can attract very high quality faculty in the field. As it is, faculty are leaving because of the noncompetitive salaries at CUNY.
The Department is committed to participating in the CUNY Doctoral Program in Computer Science. Many of our faculty are on the doctoral faculty, and we regularly teach and supervise doctoral students.
I(4) Recruit promising and well-prepared students of diverse ethnic and cultural backgrounds and retain them.
Regrettably, the CIS program does not mirror the student body at Brooklyn College, neither in terms of minorities nor of women. We need to work together with the Administration in developing proposals and strategies for increasing minority and women participation in our undergraduate major program.
We also need to attract more transfer students. The Department stands ready to establish articulation agreements with other schools, much like those that have been established for computer science with Kingsborough Community College and Borough of Manhattan Community College.
Analysis of retention in both the computer science major and in our Master's programs would be extremely useful. Why do computer science students drop out in significant numbers, and what can be done to retain them?
We need resources to develop honors sections of many of our major courses to promote students to attend graduate school in computer science. Ultimately, the only way to alleviate the shortage of computer science faculty is to widen the pipeline to graduate school. We also need to attract more of our undergraduates into the Brooklyn College CIS Master's programs.
b. to assure a student-oriented campus
The College is known as student-friendly in the area of computer science. The facilities for students are excellent, the roster of courses offered and the times when courses are available are broad, making it easy for students to organize class schedules in their particular area of interest and according to their schedules of availability.
II(1) Provide enough sections of required courses to enable students to satisfy their degree requirements at their desired pace.
Core 5.1 and required courses in the CIS major are offered frequently and at many times in the day, evening and on weekends. It is quite common for us to add additional sections of Core 5.1 at the Dean's request during registration. We are committed to being cooperative in this regard. Unfortunately, we do not have enough adjunct funds to enable us to ensure that students are not closed out of the particular sections of CIS and Core 5.1 courses that they want, but there is usually another section at a less convenient time that is available.
(2) Provide a full complement of academic and student support services, expand current counseling efforts, and establish a coordinated academic support system.
We hope that any college expansion of counseling efforts is meant to include departmental counseling efforts. Existing released time allocations are insufficient to counsel the overwhelming number of CIS majors who need counseling. Our Deputy Chairs are overwhelmed during their counseling hours and often need to substitute department brochures and our Web site in place of personal guidance. Any reduction in released time for department administration will have a serious negative impact on an already highly strained situation.
We would be happy to participate in any coordinated academic support system that would include our majors. We note that Profs. Whitlock and Kopec of CIS are working with the Learning Center in developing automated academic support programs, as outlined in item 2g above.
II(3) Foster an academic community.
II(4) Support student development beyond the classroom.
The Department would very much like to promote students remaining on campus longer through more on-campus internships and student participation in co-curricular computing activities. Expansion of computing facilities on campus (such as the expansion and upgrade of the Library Café and the Atrium Computer Facility which has just moved to the Field Building) would help promote this goal. The recent organization of a Brooklyn College Programming Contest Team and its recognition as an official student club is a strong step in this direction. If dedicated space could be made available for the Team, with suitable computing facilities, the entire departmental student environment would be uplifted significantly.
Student development beyond the classroom is supported in all these ways. In addition, our required internship course (CIS 60.1) for our majors promotes such development. Acquiring paid on-campus and external internships for our students should be a college goal.
b. to become a “model citizen’ in the borough of Brooklyn
III. The Department of CIS plays an important role in the economy of our borough, city and region. Each year, we send out approximately150 Bachelor and Master's graduates who are capable of contributing to the information society via their skills and understanding of information technology. We educate a diverse population of Brooklyn residents: diverse in age, in gender, and in ethnicity, through our day, evening, weekend and graduate programs.
Under our CIS 60.1 projects course, many students do internships for Brooklyn organizations and companies.
III(1) Expand continuing education programs.
While our academic department does not formally participate in Continuing Education, we do provide full evening and weekend majors for adults who wish to change career fields and for information technology workers who wish to upgrade their skills and knowledge.
We stand ready to implement training and education contracts consistent with our curriculum and to offer off-campus courses and programs. We also offer an underutilized undergraduate Certificate Program in Computers and Programming that can be a vehicle for continuing education.
III(4) Expand collaboration with other CUNY colleges.
We have articulation agreements between our department and sister departments at Kingsborough Community College and Borough of Manhattan Community College. We stand ready to establish such agreements with other CUNY and non-community colleges. (We also have an articulation agreement, through the Pre-Engineering program, with Polytechnic University.)
4. What are your department’s major goals for the upcoming academic year 2005-2006? Indicate any special needs or anticipated problems in achieving these goals. Is your department considering any new programs?
The Department is proposing a new BS Program in Multimedia Computing, for which we have submitted a proposed Letter of Intent to the administration.
The following are departmental goals for 2005-06:
a. Stabilizing falling enrollment.
b. Increasing external funding.
c. Developing a new Core computing course.
d. Updating and Modernizing CIS 1.5, the entry course to the CIS major.
e. Progressing in introducing an undergraduate major in Multimedia Computing.
f. Obtaining space for multimedia research and robotics laboratories.
g. Developing a self-study and a long-range plan for the department.
h. Obtaining space for a larger CIS seminar room to hold our large faculty, and instituting a CIS faculty lounge.
9. If you have not been able to submit full-time and/or adjunct appointment forms in a timely manner, please provide an explanation of some of the difficulties you’ve faced in doing so.
Not applicable.
10. If your department has submitted within the last five years a multi-year plan, following an external evaluation, describe the progress you’ve made in implementing that plan.
Not applicable.