Computer Information Science American River College
Courses

CISP 480: Honors Introduction to Structured Programming

Units: 5.00
Prerequisite: Placement into ENGWR 480 through the assessment process.
Advisory: CISC 310 (Introduction to Computer Information Science)
Hours: 72 hours lecture, 54 hours laboratory
Description: This honors course combines the content of both CISP 300 and CISP 360 and presents it in an accelerated fashion emphasizing projects and collaborative work. It introduces methods for solving typical computer problems by assessing and analyzing computing problems, performing algorithm design using a top-down, divide and conquer approach, and continues with implementation, documentation, testing, and debugging. Topics include structured programming, data representation, data types, variables, constants, operators, and expression evaluation. It also includes control structures, functions, interactive and file input/output, standard libraries, arrays, pointers, structures, classes, and objects. Pseudocode and an object-oriented programming language are used to create program solutions. This course is not open to students who have completed CISP 300 or CISP 360.

Section 3: Learning Outcomes and Objectives

Upon completion of this course, the student will be able to:

  • develop, implement, and evaluate expressions using the operators prevalent in most programming languages including arithmetic, comparison, and logical operators
  • develop and implement basic algorithms using sequence, selection, and repetition
  • deduce pre- and post-conditions for control structures and modules
  • construct a trace table to emulate the execution of a program that utilizes variables, various control structures, data organizations, modules, and parameters
  • differentiate roles involved in software development, including developers, analysts, and test engineers
  • develop efficient algorithms for the solution of problems using structured programming techniques
  • implement suitable data structures to support a given algorithm
  • formulate and implement algorithms to solve complex problems using a high-level language
  • use the top-down, divide and conquer development approach to implement modular, maintainable programs
  • assess the efficiency of differing solutions to a problem
  • analyze an existing algorithm implementation for errors, then develop solution program code to correct the errors
  • utilize standard libraries for common tasks such as file input/output and mathematical operations
  • design and use classes and objects
  • compare procedural and object-oriented approaches to problem solving
  • apply the software development life-cycle for program design, development, coding style, documentation, and testing
Certificates requiring this course: