Programming Development: Concepts and Techniques - CIS52

Professor: Priscilla Grocer


Office: K-112

COURSE DESCRIPTION: During this course, the student will learn to analyze difficult programming problems and develop solutions for them. The course will deal with sophisticated concepts of logic, program development, programming style, data structures and the use of programming tools. The students will have the opportunity to analyze complex business programming concepts and develop and work on individual business programming projects.

COURSE OBJECTIVES: The objective of this course is to make students truly proficient programmers and to give them an in-depth course in analyzing problems and developing solutions. The student will learn to develop and write programs to accomplish programming goals and will be ready for an entry level programming job. At the completion of this course, the following objectives should have been accomplished:

TEXTS: The course will rely heavily on instructor notes. The text for or notes for object oriented coding will be discussed in class. Suggestions will be posted.

COURSE OUTLINE:

  1. Data manipulation
  2. Files
    1. Sequential, indexed and introduction of relative
    2. Relational database design and structure
    3. Design and organization - data structures
    4. Processing with multiple files
  3. Processing
    1. Updates
    2. Retrievals
  4. Working with multiple files
    1. Sequential
    2. Random
  5. Screen concepts
    1. Review
    2. Variety of approaches
    3. Code to develop user friendly interactive programs
  6. Sorting and Searching
    1. External
    2. Internal
  7. Subprograms
    1. Concepts
    2. Practical application
  8. Advanced problem solving
    1. Techniques
    2. Analyzing samples
    3. Writing and evaluating code
  9. Object oriented programming
    1. Concepts of object oriented programming
    2. Object oriented program
    3. Analyzing samples
    4. Writing code
  10. Systems analysis and design
  11. Data structures introduction

REQUIREMENTS:

Exams: There will a final examination covering the work of the semester. Any quizzes will be announced and will only be given if the instructor feels they are necessary. Quizzes will count as 1 or 2 homework assignments depending on the depth of the quiz. All exams and quizzes are open notes and open book unless otherwise announced.

Homework: The student will be required to submit homework assignments two class periods from the day of the assignment unless otherwise noted. Assignments will consist mainly of program segements for the student to code, flowcharting assignments, analysis of programs and logic questions.

Programs: The student will be required to write complete programs and to take standard programs and modify them. All programs should be passed in with rough coding, the programming logic flowchart (or another logic tool if it has been approved by the instructor) and the program with the output attached. Most assignments can be done using the student's language of choice, some will require specific language implementation. There will be approximately three to five major and approximately twelve minor programming projects.

Grading:
Homework, programs and quizzes80%
Class participation, responsibility about work, keeping up to date, quality of work, adding extras that are above and beyond, showing initiative, figuring out problems etc.10%
Final10%

Evaluation: Assignments and programs are graded using either number grades or letter grades based on the following (A=90-100, B=80-89, C=70-79, D=60-69, F=below 60). The students grade for the course will use the same scale and will be based on the percentages explained in the grading section. Plus and minus grades will be given.
Some of the assignments in this class are open ended - the grading will be based on how well the project demonstrates mastery of the material. Students who do a minimum of work will be graded accordingly. Resubmission is allowed on open-ended projects to improve grades.
Note: Non open-ended assignments that are completed accurately, with no errors, according to the parameters of the assignment will be graded as A. To achieve an A+, students must have done sufficient extra work in design or implementation that makes the assignment standout. In doing assignments, students must do their own work. Relying too heavily on my examples or working too closely with someone else will be penalized.

ATTENDANCE: The student is allowed to cut six one hour classes.

METHODOLOGY: The course is given using the lecture method and the student is encouraged to ask questions at any point during the lecture. When appropriate, classes exercises and problem solving techniques are used. Students will be encouraged to use other sources of reference. If this course is taken via Distance Learning, the student will find the information needed available at the Web site and will be encouraged to use other sources of reference. Groups will be established when necessary or beneficial.
This SYLLABUS is not to be construed as a CONTRACT in any way, shape, manner or form. This SYLLABUS is a SUGGESTED course OUTLINE and will be GENERALLY followed, subject to change according to the INSTRUCTOR'S discretion and needs. Academic FLEXIBILITY is important!



Back to the Top
Return to home page
Return to previous page - CIS52