COP2551/COP3540 Interest Group The following CIS faculty met on 2/6/02 to interchange ideas about the implementation of this course sequence: Katharine Brown, Roger Eggen, Sherif Elfayoumy, Paul Higbee, Chip Klostermeyer, Scott Piersall, Behrooz Seyed-Abassi, Arturo Sanchez, Judy Solano, Charles Winton, and Ron Zucker. Based on concerns that some students may not be coming out of one or both of these courses (COP2251, in particular) with sufficient programming skills, the discussion lead to propose the following activities: 1. Collaborative definition of a document referred to as “Implementation Guidelines” associated with this sequence, which will help define a (hopefully dynamic over time) consensus on the topics to be covered, the depth of coverage, and topic distribution between the two courses in the sequence. We are taking the current APC forms associated with these courses as the official course descriptions, to which we have added “I/O Streams”. The last page of each APC form is attached as an image file (scanned). 2. Implementation of a pre-programming assignment to be tackled by students entering COP3540 as an assessment instrument to measure the extent at which they possess the skills implied by the COP2551 course objectives and topics. To achieve this, we have proposed to: 1. Ask interested faculty to submit the questionnaire that follows this page, which will help define the first draft of the implementation guidelines and pre-programming assignment, to be discussed in a future meeting. Please, complete the questionnaire and send it to asanchez@unf.edu. 2. Wait for the first drafts to be compiled by Katharine Brown, Sherif Elfayoumy, Chip Klostermeyer, and Arturo Sanchez, who volunteered for the task, and then call for a second meeting for discussing, and refining them. Respectfully submitted by: Katharine Brown, Sherif Elfayoumy, Chip Klostermeyer, and Arturo Sanchez 2/6/02 Questionnaire on Implementing the COP2551/COP3540 Course Sequence Submitted by: 1. Please use the following table to let us know your ideas about: a. The order in which these topics should be covered. b. The depth at which these topics should be covered, and c. The distribution of these topics between COP2551 and COP3540. The clustering we are presenting corresponds to the one in the current APC’s, but feel free to reorganize topics, as you deem appropriate. However, do not add topics that are not listed, for there will be a section in the questionnaire that addresses this issue. We are assuming each course is delivered in the equivalent of a 15-week semester with 150 mins of contact hours per week (usually, 2 class sessions per week), therefore the total number of class sessions should add up to the appropriate number. For instance, in a typical Spring/Fall term, that number should never be greater than 30, and you probably need to take into account the number of class sessions needed for test administration. COP2551: Topic # Class Sessions Implementation Details The object-oriented paradigm Do you lecture on this? Are students required to learn this on their own? Do you ask exam questions on this? Do you give HW requiring use of this? Comments: Design issues Do you lecture on this? Are students required to learn this on their own? Do you ask exam questions on this? Do you give HW requiring use of this? Comments: and Do you lecture on this? Are students required to learn this on their own? Do you ask exam questions on this? Do you give HW requiring use of this? Comments: Classes and objects Do you lecture on this? Are students required to learn this on their own? Do you ask exam questions on this? Do you give HW requiring use of this? Comments: Arrays Do you lecture on this? Are students required to learn this on their own? Do you ask exam questions on this? Do you give HW requiring use of this? Comments: Conditionals Do you lecture on this? Are students required to learn this on their own? Do you ask exam questions on this? Do you give HW requiring use of this? Comments: Properties methods Loops Do you lecture on this? Are students required to learn this on their own? Do you ask exam questions on this? Do you give HW requiring use of this? Comments: Protection mechanisms Do you lecture on this? Are students required to learn this on their own? Do you ask exam questions on this? Do you give HW requiring use of this? Comments: Abstraction Do you lecture on this? Are students required to learn this on their own? Do you ask exam questions on this? Do you give HW requiring use of this? Comments: Encapsulation Do you lecture on this? Are students required to learn this on their own? Do you ask exam questions on this? Do you give HW requiring use of this? Comments: Inheritance Do you lecture on this? Are students required to learn this on their own? Do you ask exam questions on this? Do you give HW requiring use of this? Comments: Polymorphism Do you lecture on this? Are students required to learn this on their own? Do you ask exam questions on this? Do you give HW requiring use of this? Comments: Interfaces Do you lecture on this? Are students required to learn this on their own? Do you ask exam questions on this? Do you give HW requiring use of this? Comments: Exception handling Do you lecture on this? Are students required to learn this on their own? Do you ask exam questions on this? Do you give HW requiring use of this? Comments: Event handling Do you lecture on this? Are students required to learn this on their own? Do you ask exam questions on this? Do you give HW requiring use of this? Comments: User interfaces Do you lecture on this? Are students required to learn this on their own? Do you ask exam questions on this? Do you give HW requiring use of this? Comments: Threads Do you lecture on this? Are students required to learn this on their own? Do you ask exam questions on this? Do you give HW requiring use of this? Comments: Graphics and animation Do you lecture on this? Are students required to learn this on their own? Do you ask exam questions on this? Do you give HW requiring use of this? Comments: I/O Streams Do you lecture on this? Are students required to learn this on their own? Do you ask exam questions on this? Do you give HW requiring use of this? Comments: COP3540: Topic #Class Sessions Implementation Details Abstract data type, classes and different structures Do you lecture on this? Are students required to learn this on their own? Do you ask exam questions on this? Do you give HW requiring use of this? Comments: Arrays: classes and class interfaces Do you lecture on this? Are students required to learn this on their own? Do you ask exam questions on this? Do you give HW requiring use of this? Comments: Stacks: operations, parsing arithmetic expressions Do you lecture on this? Are students required to learn this on their own? Do you ask exam questions on this? Do you give HW requiring use of this? Comments: Queues: operations, deques, priority queues Do you lecture on this? Are students required to learn this on their own? Do you ask exam questions on this? Do you give HW requiring use of this? Comments: Linked lists: singly and double linked lists Do you lecture on this? Are students required to learn this on their own? Do you ask exam questions on this? Do you give HW requiring use of this? Comments: Recursion: structure and handling Do you lecture on this? Are students required to learn this on their own? Do you ask exam questions on this? Do you give HW requiring use of this? Comments: Sorting: simple and advanced techniques Do you lecture on this? Are students required to learn this on their own? Do you ask exam questions on this? Do you give HW requiring use of this? Comments: Trees: operations and traversals Do you lecture on this? Are students required to learn this on their own? Do you ask exam questions on this? Do you give HW requiring use of this? Comments: Heaps Do you lecture on this? Are students required to learn this on their own? Do you ask exam questions on this? Do you give HW requiring use of this? Comments: Indexing: simple and complex Do you lecture on this? Are students required to learn this on their own? Do you ask exam questions on this? Do you give HW requiring use of this? Comments: Hashing: Static overflow handling Do you lecture on this? Are students required to learn this on their own? Do you ask exam questions on this? Do you give HW requiring use of this? Comments: Hashing: open addressing, and separate chaining Do you lecture on this? Are students required to learn this on their own? Do you ask exam questions on this? Do you give HW requiring use of this? Comments: Hashing: dynamic and extendable Do you lecture on this? Are students required to learn this on their own? Do you ask exam questions on this? Do you give HW requiring use of this? Comments: Graphs Do you lecture on this? Are students required to learn this on their own? Do you ask exam questions on this? Do you give HW requiring use of this? Comments: Weighted graphs Do you lecture on this? Are students required to learn this on their own? Do you ask exam questions on this? Do you give HW requiring use of this? Comments: 2. Please send us a sample of any other assessment instrument(s) that you use to evaluate your students. That is, exams, quizzes, homework, programs, etc. (URL if at all possible). 3. Please let us know about: a. Topics not on the previous table that you would like to include with a brief description of your approach, a rationale that explains why you believe it should be added, and to which course. b. Topics on the previous table that you believe should not be covered with a rationale that explains your position. 4. Provide any information about your style or philosophy of teaching these courses. 5. Please let us know about other resources not mentioned above that you use or have produced (URL if at all possible). 6. Please let us know about your approach to use Integrated Development Environments (IDE’s) in connection with these courses. If you do not use any, we would like to know your rationale for not using them. 7. You are encouraged to suggest a sample exam to be taken (anonymously) by students entering COP3540 as an assessment instrument to measure the extent at which they posses the skills implied by the COP2551 course objectives and topics. Such an exam might consist of a single question of the form “Write a Java program to do X.” which is to be completed, with pencil and paper, in, say, thirty minutes. The goal is that the results of these exams will allow the faculty to assess the skills of students coming out of COP 2251. Thank you for your time and cooperation!