CSC 164 Computer Science II

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.

Credits

4

Prerequisite

Prerequisite: CSC 114

See Course Syllabus

Course Number and Title:

CSC 164 Computer Science II

Campus Location

  • Dover
  • Georgetown
  • Wilmington

Prerequisites

Prerequisite: CSC 114

Course Credits and Hours

4 credit(s)

3 lecture hours/week

2 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.

Additional Materials

None

Required Text(s)

Obtain current textbook information by viewing the campus bookstore - https://www.dtcc.edu/bookstores online or visit a campus bookstore. Check your course schedule for the course number and section.

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

The grade will be determined using the Delaware Tech grading system:

90-100 = A
80-89 = B
70-79 = C
0-69 = F
Students should refer to the Catalog/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%

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.

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.

Students in Need of Accommodations Due to a Disability

We value all individuals and provide an inclusive environment that fosters equity and student success. 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. The College's policy on accommodations for persons with disabilities can be found in the College's Guide to Requesting Academic Accommodations and/or Auxiliary Aids Students may also access the Guide and contact information for Disabilities Support Counselors through the Student Resources web page under Disabilities Support Services, or visit the campus Advising Center.

Minimum Technology Requirements

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