UoPeople Online Syllabus Repository (OSR)

Computer Science

CS 1103 Programming 2

UoPeople logo


CS 1103: PROGRAMMING 2


Syllabus


Prerequisites: CS 1102 Programming 1


Course Description:


This course builds on the Introduction to Programming 1 course and teaches a more highly developed Java programming language with features beyond the basic concepts covered in the first programming course. A large part of the course will be devoted to more advanced building blocks such as recursion, linked data structures, and Java's Collection Framework. In addition to this, you will learn more about designing and coding complex, robust, and efficient programs. And you will be introduced to a professional programming tool: the Eclipse Integrated Development Environment.

The syllabus for the course will consist of Chapters 8 through 12 from the textbook, Introduction to Programming Using Java.


Required Textbook and Materials:


Introduction to Programming Using Java, Version 5.0, December 2006, (Version 5.1, with minor updates and corrections, June 2009), David J. Eck, Hobart and William Smith Colleges. A PDF version of the book which can be downloaded to your computer can be found on the Course Home Page. The book is also available from http://math.hws.edu/javanotes.


Software Requirements/Installation


In this course, we will do several programming projects. Therefore, there is a need to install the Java Development Kit (JDK) and preferably also an editor. The first task in the course will guide you through the steps of installing and testing the required software environment.


Learning Objectives and Outcomes:


At the end of this course the students will be:

  • Acquainted with intermediate programming techniques using Java.
  • Familiar with advanced Object Oriented concepts.
  • Able to use tools such as the Eclipse and the Eclipse debugger


Course Schedule and Topics


This course will cover the following topics in eight learning sessions, one unit per week.


Unit 1- Exceptions, the switch statement, Analysis of Algorithms
Unit 2
- Recursion and Linked Lists
Unit 3
- ADTs, Stacks and Queues
Unit 4
- Recursive Descent Parsers and Generic Programming
Unit 5
- More Generic Programming
Unit 6
- Files and Networking; Advanced GUI Programming
Unit 7
- Actions and Buttons; Complex Components and MVC
Unit 8
- Some GUI Programming
Unit 9
- Final Exam


Study Guide


The course is conducted entirely via the University of the People Online Campus (http://my.uopeople.edu).


Unit 1: Exceptions, the switch statement, Analysis of Algorithms

• Read the Learning Guide and external Reading Assignments
• Take the Quiz (optional)
• Participate in the Discussion Forum (Post, Comment and Rate)
• Complete and submit Unit 1 Assignment (Lab 1)
• Make entries to the Learning Journal

Unit 2: Recursion and Linked Lists

• Peer-Assess Unit 1 Assignment
• Read the Learning Guide and external Reading Assignments
• Take the Quiz (optional)
• Participate in the Discussion Forum (Post, Comment and Rate)
• Complete and submit Unit 2 Assignment (Lab 2)
• Make entries to the Learning Journal


Unit 3
: ADTs, Stacks and Queues

• Peer-Assess Unit 2 Assignment
• Read the Learning Guide and external Reading Assignments
• Take the Quiz(Optional)

•Take the Graded Quiz
• Participate in the Discussion Forum (Post, Comment and Rate)
• Complete and submit Unit 3 Assignment (Lab 3)
• Make entries to the Learning Journal


Unit 4: Recursive Descent Parsers and Generic Programming

• Peer-Assess Unit 3 Assignment
• Read the Learning Guide and external Reading Assignments
• Take the Quiz (optional)
• Participate in the Discussion Forum (Post, Comment and Rate)
• Complete and submit Unit 4 Assignment (Lab 4)
• Make entries to the Learning Journal

Unit 5: More Generic Programming

• Peer-Assess Unit 4 Assignment
• Read the Learning Guide and external Reading Assignments
• Take the Quiz (optional)
• Participate in the Discussion Forum (Post, Comment and Rate)
• Complete and submit Unit 5 Assignment (Lab 5)
• Make entries to the Learning Journal


Unit 6:
Files and Networking; Advanced GUI Programming

• Peer-Assess Unit 5 Assignment
• Read the Learning Guide and external Reading Assignments
• Take the Quiz (optional)

•Take the Graded Quiz
• Participate in the Discussion Forum (Post, Comment and Rate)
• Complete and submit Unit 6 Assignment (Lab 6)
• Make entries to the Learning Journal

Unit 7: Actions and Buttons; Complex Components and MVC

• Peer-Assess Unit 6 Assignment
• Read the Learning Guide and external Reading Assignments
• Take the Quiz (optional)
• Participate in the Discussion Forum (Post, Comment and Rate)
• Complete and submit Unit 7 Assignment (Lab 7)
• Make entries to the Learning Journal

Unit 8: Some GUI Programming

  • Review material in the textbook relating to the topics in the Assignment.
  • To reinforce your knowledge, try to do as many of the relevant exercises in earlier chapters of the textbook as possible.
  • Perform Lab 12 and post your answer in the Learning Journal
  • Post your answer to the question in the Discussion Forum and follow it up with approximately 3-4 comments to other students' posts. Rate other students’ posts.
  • Read through the Unit 9 Learning Guide
  • Take the Review Quiz in Unit 9
  • Complete the Course Evaluation


Unit 9: Final Examination

  • Prepare for and submit the final examination.
  • The final exam will take place during Week 9. (Exact date and other details will be announced.)



Course Requirements


Assignments
There are Assignments to be completed for each of the 8 Units in this course. You will be required to upload your assignments by the indicated deadline and in addition, to assess three of your classmates’ assignments according to the guidelines provided, during the following learning week. Failure to submit assignments could result in failure of the course.

Discussion Forum
There are Discussion Forum questions to be completed for each study unit in this course. In each unit, you will be required to post your response to the question in the forum. In addition, you must provide constructive commentary on at least three of your peers’ postings and rate their work between one and five according the guidelines provided.

Discussion Forums are only active for the relevant learning week and it is not possible to contribute to a discussion forum once it is closed. Failure to participate in the Discussion Forums could result in failure of the course.

Course Forum
The Course Forum is the place to raise issues and questions relating to the course. It is monitored by the instructors. It is a good place to meet fellow students taking the same course. While it is not required to participate in this forum, it is highly recommended.

Classroom Forum
The Classroom Forum is a small forum available only to students in the same classroom or group. Participation in this forum is an excellent way to get to know your peers and is also a platform for raising issues and questions relating to the course. While it is not required to participate in this forum, it is highly recommended.

Learning Journal
The Learning Journal is a tool for self-reflection on the learning process. In addition to completing directed tasks, you should use the Learning Journal to document your activities, record problems you may have encountered and to draft answers for Discussion Forums and Assignments. The Learning Journal should be updated regularly (on a weekly basis), as the learning journals will be assessed by your instructor as part of your Final Grade.

Quizzes
For each unit of work, there is a self-quiz consisting of multiple choice and True/False questions. You will have multiple attempts to take the quiz and improve your results. The results of the self-quiz do not count towards your Final Grade. There are also two graded quizzes in the course, one in Unit 3 and the other in Unit 6. Both count towards your final grade. It is recommended that you complete the self-quiz to ensure that you have adequately understood the course materials.

Final Examination
The Final Exam will take place during Week/Unit 9, following the completion of eight units of work. The format of the Final Exam is similar to that of the quizzes, and may contain a combination of different question types. You will have one attempt to take the exam, and it will be graded electronically. Specific instructions on how to prepare for and take the Final Exam will be provided during Week 8 (located inside the Unit 9 Learning Guide). Final Exams must be taken without the use of course learning materials (both those inside and outside the course). If particular materials are allowed for use during the exam, these will be noted in the exam’s instructions.




Policies


Grading
The University has established the following grading scale. All faculty members are expected to comply with this scale:

Grade Scale Grade Points
A+ 98-100 4.00
A 93-97 4.00
A- 90-92 3.67
B+ 88-89 3.33
B 83-87 3.0
B- 80-82 2.67
C+ 78-79 2.33
C 73-77 2.00
C- 70-72 1.67
D+ 68-69 1.33
D 63-67 1.00
D- 60-62 0.67
F Under 60 0.00

Grades will be based on a standard 100-point scale with the following values and ranges:

Grading Components and Weights

Learning Journals 10%
Assignments 30%
Discussion Questions 20%
Graded Quizzes 20%(10% each)
Final Exam 20%

Grade Appeal
Final Grades may be appealed when you believe that the grade you have been assigned for a course is unjust or unfair. For more information on the Grade Appeal procedure, please refer to the Student Handbook.

Participation
Non-participation is characterized by lack of assignment submission and/or inadequate contribution in discussion forum postings.

  • Assignments must be submitted on or before the deadline. A course timeline is provided in the course schedule. The instructor will specify the deadline for each assignment.
  • Occasionally there may be a legitimate reason for submitting an assignment late. Most of the time late assignments will not be accepted, and there will be no make-up assignments. Students should review the Late Assignment Policy appearing in the Student Handbook.

Any student showing non-participation for 2 weeks (consecutive or non-consecutive) is likely to automatically fail the course.

All students are obligated to inform their instructor in advance of any known absences which may result in their non-participation.

Academic Honesty and Integrity

When you submit any work that requires research and writing, it is essential to cite and reference all source material. Failure to properly acknowledge your sources is known as “plagiarism” – which is effectively passing off an individual’s words or ideas as your own. University of the People adheres to a strict policy of academic honesty and integrity. Failure to comply with these guidelines may result in sanctions by the University, including dismissal from the University or course failure. For more information on this topic, please review the Academic Integrity Policy in the University Catalog.

Unless otherwise stated, any materials cited in this course should be referenced using the style guidelines established by the American Psychological Association (APA). The APA format is widely used in colleges and universities across the world and is one of several style and citation formats required for publication in professional and academic journals. Purdue University’s Online Writing LAB (OWL) is a free website that provides excellent information and resources for understanding and using the APA format and style. The OWL website can be accessed here: https://owl.purdue.edu/owl/purdue_owl.html


Code of Conduct
University of the People expects that students conduct themselves in a respectful, collaborative and honest manner at all times. Harassment, threatening behavior, or deliberate embarrassment of others will not be permitted.

Any conduct that interferes with the quality of the educational experience is not allowed and may result in disciplinary action, such as course failure, probation, suspension, or dismissal. Please see the Student Handbook for more information.