CSC 164 Computer Science II


Campus Location:
Georgetown, Dover, Wilmington
Effective Date:
2020-51
Prerequisite:
CSC 114, SSC 100 or concurrent
Co-Requisites:

none

Course Credits and Hours:
4.00 credits
3.00 lecture hours/week
2.00 lab hours/week
Course Description:

This course, the second in a series, emphasizes the use of classes and objects. Topics include object-oriented programming concepts, abstraction, algorithms, encapsulation, inheritance, and polymorphism. Students write programs that are fault tolerant using multiple files, modules, and class hierarchies.

Required Text(s):

Obtain current textbook information by viewing the campus bookstore online or visit a campus bookstore. Check your course schedule for the course number and section.

Additional Materials:

None

Schedule Type:
Classroom Course
Disclaimer:

None

Core Course Performance Objectives (CCPOs):
  1. Discuss significant trends and societal impacts related to computing, software, and the Internet. (CCC 4, 5; PGC 1, 2, 3)
  2. Construct Object-Oriented Programming (OOP) solutions for reuse, using multiple modules, abstract data types (ADTs) that incorporate encapsulation, polymorphism, data abstraction, inheritance, and information hiding. (CCC 2, 6; PGC 1, 2, 3)
  3. Create programming solutions that use data structures and existing libraries. (CCC 2, 6; PGC 1, 2, 3)
  4. Differentiate between object-oriented and structured programming methodologies.  (CCC 2, 6; PGC 1, 3)
  5. Apply the principles of user interface design. (CCC 2, 6; PGC 2, 3)

See Core Curriculum Competencies and Program Graduate Competencies at the end of the syllabus. CCPOs are linked to every competency they develop.

Measurable Performance Objectives (MPOs):

Upon completion of this course, the student will:

  1. Discuss significant trends and societal impacts related to computing, software, and the Internet.
    1. Discuss and identify ethical issues that arise in software development, and address them technically and ethically.
    2. Identify and explain recent societal trends and issues related to assignments, e.g., securing medical devices such as pacemakers.
  2. Construct Object-Oriented Programming (OOP) solutions for reuse, using multiple modules, abstract data types (ADTs) that incorporate encapsulation, polymorphism, data abstraction, inheritance, and information hiding.
    1. Create OOP programs that make appropriate use of encapsulation, data abstraction, and information hiding.
    2. Test, debug, and correct OOP programs employing encapsulation, data abstraction, and information hiding.
    3. Design, test, and secure OOP programs from current security vulnerabilities.
    4. Analyze the execution of searching and sorting algorithms and prepare a walk-through or demonstration.
    5. Produce user interfaces that incorporate simple color models and handle events.
  3. Create programming solutions that use data structures and existing libraries.
    1. Create OOP programs that make appropriate use of simple data structures and library modules such as arrays, lists, and dictionaries.
    2. Analyze programs, and evaluate efficiency by applying different data structures in different data sets.
    3. Compare and contrast OOP programs using different data structures in terms of modularity, reusability, and maintainability.
  4. Differentiate between object-oriented and structured programming methodologies.
    1. Identify the key characteristics of the object-oriented, structured programming.
    2. Outline the strengths and weaknesses of the object-oriented and structured programming paradigms.
    3. Analyze programs that use the object-oriented and structured paradigms.
  5. Apply the principles of user interface design.
    1. Identify user interface design issues during design phase.
    2. Discuss the issues of interface design such as human factors, ergonomics, psychological, and consistency, etc.
    3. Implement solutions based on the user interface requirements and error-handling.
Evaluation Criteria/Policies:

Students must demonstrate proficiency on all CCPOs at a minimal 75 percent level to successfully complete the course. The grade will be determined using the Delaware Tech grading system:

92 100 = A
83 91 = B
75 82 = C
0 74 = F

Students should refer to the Student Handbook for information on the Academic Standing Policy, the Academic Integrity Policy, Student Rights and Responsibilities, and other policies relevant to their academic progress.

Final Course Grade:

Calculated using the following weighted average

Evaluation Measure

Percentage of final grade

Lecture Exams: 4 exams weighted at 8% each (summative)

32%

Final Exam  (summative)

11%

  Programming assignments: 7  are weighted at 6% each (summative)

42%

Assessments are determined by the course instructor  with a percentage of 15% total (formative)

15%

TOTAL

100%

Core Curriculum Competencies (CCCs are the competencies every graduate will develop):
  1. Apply clear and effective communication skills.
  2. Use critical thinking to solve problems.
  3. Collaborate to achieve a common goal.
  4. Demonstrate professional and ethical conduct.
  5. Use information literacy for effective vocational and/or academic research.
  6. Apply quantitative reasoning and/or scientific inquiry to solve practical problems.
Program Graduate Competencies (PGCs are the competencies every graduate will develop specific to his or her major):
  1. Design and implement moderate to complex programs that meet specifications, perform reliably, and are maintainable using the principles of software engineering.
  2. Apply object oriented design principles to software analysis and programming.
  3. Analyze currently available operating systems and software development platforms to design and implement software applications that are effective and secure.
  4. Develop programs in assembly language that directly address the computer architecture.
  5. Develop technical documentation to meet end user requirements.
Disabilities Support Statement:

The College is committed to providing reasonable accommodations for students with disabilities. Students are encouraged to schedule an appointment with the campus Disabilities Support Counselor to request an accommodation needed due to a disability. A listing of campus Disabilities Support Counselors and contact information can be found at the disabilities services web page or visit the campus Advising Center.

Minimum Technology Requirements:
Minimum technology requirements for online, hybrid, video conferencing and web conferencing courses.