|
CS2332 Object-Oriented Programming
Part I
Course Duration: One Semester
Credit Units: 3
Level: B2
Medium of Instruction: English
Pre-requisites: Nil
Pre-cursors: CS2331 Problem Solving and Programming
Equivalent Courses: Nil
Exclusive Courses: Nil
Part II
Course Aims:
This course aims to provide extensive practice on object-oriented programming, with emphasis on object-oriented design and principles. Students will be exploring advanced features provided by object-oriented languages as well as best practices in all aspects of object-oriented programming. This course also provides an opportunity for students to develop and implement solutions to problems using an object-oriented language.
Course Intended Learning Outcomes (CILOs): (state what the student is expected to be able to do at the end of the course according to a given standard of performance)
Upon successful completion of this course, students should be able to: | No. | CILOs | Priority level | | 1. | Effectively apply object-oriented principles and techniques to devise software solutions to problems; | 1 (core) | | 2. | Actively engage in the use of tools, features provided by modern object-oriented language and best practices in object-oriented programming; | 2 (essential) | | 3. | Critically analyze and evaluate programs based on object-oriented principles; | 3 (advance) | (Priority level 1: highest priority)
Teaching and learning Activities (TLAs): (designed to facilitate students' achievement of the CILOs)
Teaching pattern: Suggested lecture/tutorial/laboratory mix: 2 hrs. lecture; 1 hr. tutorial
This is a second course on computer programming, aiming to provide student with extensive programming practice. The design of teaching and learning activities aims to provide such an environment to encourage students to practice and improve their object-oriented programming skills. Based on the Course ILOs, the teaching/learning activities of this course may include:
Lectures and resources. All CILOs will be introduced, explained, and demonstrated through lectures. Supplementary resources will be made available for out-of-classroom learning. Taylor-made on-line checking tool will provide students with instant feedback on the correctness of their programming exercises.
Tutorials. Students will practice problems with designed programs, helping them to gear up their skills in all CILOs.
Presentations and discussions during tutorials provide a platform for students to critically evaluate and challenge each other based on various design issues.
Short quizzes during the semester will check students' achievement of the learning outcomes. This will provide timely feedback on their learning progress.
Assignments provide students with challenging problems, which serve as a learning and assessment tool on all CILOs.
Correlation between CILOs and TLAs:
| CILO No. | Lectures and resources | Tutorials | Presentations and discussions | Short quizzes | Assignments | | 1 (OO programming) | 2 | 2 | - | 2 | 2 | | 2 (Modern tools and features, best practices) | 2 | 2 | 1 | 1 | 2 | | 3 (Evaluation) | 2 | 2 | 2 | 1 | 2 | (1: Minor focus on the ILO; 2: Main focus on the ILO)
Assessment Tasks/Activities: (designed to assess how well the students achieve the CILOs)
Based on the Course ILOs, the assessment criteria, assessment tasks / activities of this course may include:
| CILO No. | Assessment criteria | Assessment tasks / activities | | 1 (OO programming) | · [passing criterion] Effectively applies appropriate object-oriented programming skills to construct a correct and meaningful programming solution which matches with the expected behaviour. · Effectively applies object-oriented principles in problem solving. · Articulates a convincing rationale for strategies used to derive the programming solution. | Short quizzes, assignments, examination | | 2 (Morden tools and features, best practices) | · [passing criterion] Demonstrate the ability to apply tools and features provided by modern object-oriented language in program development. · [passing criterion] Demonstrate the ability to observe and engage in best practices in program development. · Effectively apply modern object-oriented language features in programming. | Assignments, short quizzes, presentations, examination | | 3 (Evaluation) | · [passing criterion] Ability to identify the key concepts of object-oriented principles. · Critically analyze and evaluate object-oriented programs based on object-oriented principles. | Assignments, presentations, examination |
Grading of Student Achievement: Refer to Grading of Courses in the Academic Regulations (Attachment) and to the Explanatory Notes.
Sample grading distribution: | ILO No. | Short quizzes | Assignments | Presentations | Exam | Total for course | | 1 (OO programming) | 10% | 10% | - | 20% | 40% | | 2 (Best practices) | 7% | 5% | 3% | 20% | 35% | | 3 (Design analysis) | 3% | 5% | 7% | 10% | 25% | | AT total | 20% | 20% | 10% | 50% | 100% |
Coursework component: 50% - student must reach the level specified in the passing criterion for each ILO above, which is 50% of the maximum mark for the coursework.
Examination component: 50% - duration: 2 hours, at the end of the semester - student must obtain at least 30% from the examination to pass the course
Part III
Keyword Syllabus:
Object-oriented design: encapsulation, inheritance, polymorphism. Object-oriented principles. Program development practices: exception handling, testing, debugging, memory management. Advanced language features. Program documentation.
Related Links
Department of Computer Science
|