CSC 210 COMPUTER SCIENCE II PRESENTED AND APPROVED: NOVEMBER 2, 2012 EFFECTIVE: FALL 2013-14
Prefix & Number CSC 210 Course : Computer Science II Purpose of this submission: New Course New Change/Updated Retire If this is a change, what is being changed? Update Prefix Course Description (Check all that apply) Course Number Format Change Credits Prerequisite Competencies Textbook/Reviewed Competencies-no changes needed Does this course require additional fees? No Yes If so, please explain. Is there a similar course in the course bank? No Yes (Please identify) Articulation: Is this course or an equivalent offered at other two and four-year universities in Arizona? No Yes (Identify the college, subject, prefix, number and title: NAU CS 136, ASU CSE 205, UA - CSC 127B Is this course identified as a Writing Across the Curriculum course? No Yes Course Assessments Description of Possible Course Assessments (Essays, multiple choice, etc.) Exams standardized for this course? Midterm Final Other (Please specify): Where can faculty members locate or access the required standardized exams for this course? (Contact Person and Location) Example: NCK Academic Chair Office Quizzes, Programming Assignments, Debugging Exercises, Short Answer Essay Questions Are exams required by the department? No Yes If Yes, please specify: Student Outcomes: Identify the general education goals for student learning that is a component of this course. Check all that apply: 1. Communicate effectively. a. Read and comprehend at a college level. b. Write effectively in a college setting. 2. Demonstrate effective quantitative reasoning and problem solving skills. Method of Assessment 1-2 pages of documentation required for each programming project, sample exercises in reading code and debugging potential errors. Students create algorithm (steps to solve) a current problem and write program to solve problem. Math is typically part of solution. Exams and quizzes address reasoning and problem solving skills as well. 3. Demonstrate effective qualitative reasoning skills. Students can research and test different programs and algorithms they have created to find the overall best fit for a problem. Research assignments may be integrated with course competencies.
4. Apply effective methods of inquiry. a. Generate research paper by gathering information from varied sources, analyzing data and organizing information into a coherent structure. b. Employ the scientific method. 5. Demonstrate sensitivity to diversity a. Experience the creative products of humanity. b. Describe alternate historical, cultural, global perspectives. Office of Instruction Use only: CIP Code: ONET Code: Minimum Qualifications:
COURSE INFORMATION Initiator: Matt Butcher, Andra Goldberg, Pete Burgess Date of proposal to Curriculum Sub-Committee: November 2, 2012 Effective Semester/Year Fall 2013 Spring Summer Prefix & Number: CSC 210 Full : (100 character limit) Computer Science II Short : (30 character limit) Computer Science II Catalog Course Description: This course uses the Java programming language to build on concepts covered in Computer Science I. Course work will emphasize advanced object-oriented techniques, indepth analysis of algorithm design, data structures, and program design. SUN Course Number: Credit Hours: 4.0 Lecture Hours: 3.0 Lab Hours: 1.0 Prerequisite(s) CSC 110, MAT 151 Co-requisite(s) Intended Course Goals By the end of the semester, students will be able to: 1. Demonstrate an understanding of Object-Oriented Software Development including ethical issues in software design, software life cycle, improvement models, and representing Object-Oriented software design with UML. 2. Utilize key Object Oriented Programming concepts including inheritance, abstract data types, interfaces, polymorphism in developing console based and Graphic User Interface applications. 3. Discover data structures and use searching/sorting algorithms effectively in application development. 4. Maximize algorithm and application efficiency by interpreting O notation as well as using recursion and threading effectively. 5. Employ exception handling regarding, basic I/O, File I/O streams, and serialization to insure robust and secure programming solutions.
Course Competencies and Objectives By the end of the semester, students will be able to: Competency 1 Introduce issues in software development Objective 1.1 Understand industry related terms including software life cycle and software improvement models Objective 1.2 Utilize Object Oriented design techniques to identify classes, objects, and relationships among objects Objective 1.3 Interpret UML diagrams and design equivalent code. Competency 2 Employ Object Oriented concepts in console and GUI applications Objective 2.1 Create a program that uses multiple OOP concepts including constructors, interfaces, and inheritance. Objective 2.2 Design and create Graphical User Interface including strong documentation Objective 2.3 Interpret and utilize the concept of encapsulation to provide abstract container classes Competency 3 Discover how data structures are used in computer programming Objective 3.1 Create applications with basic data structures including ArrayLists and Vectors Objective 3.2 Implement data structures such as linked lists, queues, stacks, and binary trees. Objective 3.3 Determine which data structure(s) work best for a particular application Competency 4 Interpret O notation and confirm efficiency of algorithms and applications Objective 4.1 Describe the efficiency of sorting and searching algorithms including merge sort, quick sort, linear search, and binary search. Objective 4.2 Implement multiple sorting and searching algorithms. Objective 4.3 Design and implement recursive algorithms and structures. Objective 4.4 Examine threading concepts to increase application performance and functionality. Competency 5 Manage Exception handling and File I/0 Objective 5.1 Develop applications that utilize serialization when accessing sequential and text file I/O. Objective 5.2 Utilize multiple layers of exception handling and thorough documentation when constructing robust console and GUI applications Objective 5.3 Create applications with strong file input and output functionality. Course Textbook, Materials and Equipment Textbook(s) Current edition Author(s) Publisher Author(s) Publisher Java Foundations, Introduction to Program Design and Data Structures 2 nd Edition. ISBN-13: 978-0-13 13-212881 212881-0 John Lewis, Peter DePasuale, Joesph Chase Pearson Software/ Equipment Java SE Development kit 7 (JDK) Eclipse IDE Java Integrated development Environment Free from www.eclipse.org (Sun Microsystems Product)