CPSC 6899 Spring 2013 25691 Course Syllabus CPSC 6899 Independent Study Java Web Development (Online) Last updated: January 8, 2013 Instructor Christopher C. Whitehead, PhD E-mail: [email protected] Office: CCT 441 Office Hours: TR 11:00 am-3:30 pm, W 1:00-2:00 pm Contacting Me: For issues related to this course, please feel free to stop by my office during my posted office hours or email me within CougarView. If you need to discuss something with me personally but cannot do so during my posted office hours, please feel free to contact me to arrange a more appropriate time. Cell Phone: (706) 315-5946 Office Phone: (706) 507-8181 Department Phone: (706) 507-8170 Department Fax: (706) 565-3529 Web Site: http://csc.columbusstate.edu/whitehead Course This course focuses on completion of assignments and a course project involving Java Description Web application development approved and supervised by an appropriate member of the CS graduate faculty. Course At the Outcomes completion of this course, students will be able to: implement Hypertext Markup Language (HTML) develop JavaServer pages develop Java servlets structure a Web application work with sessions and cookies create and work with JavaBeans install and configure Apache, Tomcat, MySQL, and PHP use Java and MySQL to work with a database use JavaMail to send e-mail implement Web site security how to work with HTTP requests and responses, listeners, and filters Required Textbook Title: Murach's Java Servlets and JSP (2nd Edition) Author: Joel Murach and Andrea Steelman Publisher: Mike Murach & Associates Inc. Year: 2008 ISBN: 978-1-890774-44-8 Recommended Reading Title: Murach's Java Programming (4th Edition) Author: Joel Murach Publisher: Mike Murach & Associates, Inc. Year: 2011 ISBN: 978-1-890774-65-3 You must purchase the "required" textbook for the course. Purchasing the recommended textbook is optional, but is highly encouraged if you are not familiar with the Java programming language. Assessment Grades in this course will be based on the following assessments: Methods Programming assignments - 50% Final Project Proposal - 5% Final Project Design - 15% Final Project Implementation and Documentation - 30% Final grades will be assigned according to the following schedule: Percentage Grade 90 – 100 A 80 – 89 B 70 – 79 C 60 – 69 D <60 F How to Access This course is being offered through CougarView. You can access CougarView at: the Course https://colstate2.view.usg.edu Your CougarView username and password are the same as your CougarNet username and password. Once you've entered CougarView, you will see a list of courses you have access to which contains some combination of the phrases "CPSC 6899" and "Spring 2013." If you don't see this entry in the list, please e-mail me. Once you have clicked on the course's name and accessed the particular course itself, you will find a home page with links to other sections and tools. The first thing you should do is read the "Welcome (read first)" information. This information will give you a feel for what's available in the particular CougarView classroom environment and explain in more detail how the course will work. Once you've read this information, please feel free to explore the other areas of the course. How This This course will consist of self exploration, assignments, and a course project. On a Course Will weekly basis, you will need to: Work 1. research and review concepts relative to the course content (approx. four hours 2. 3. 4. 5. per week); check-in weekly to report your progress (approx. 30 minutes per week); complete and submit assignments (approx. one hour per week); document the development of a course project ((approx. one hour per week); work on and complete a course project (approx. two hours per week). Expected workload: 8 1/2 hours per week. Student As a student in this course, you are responsible to: Responsibilities manage your time and maintain the discipline required to meet the course requirements, submit assignments no later than the assigned due dates, decide on and develop a final project, and read any e-mail sent by the instructor and respond accordingly. “I didn’t know” is not an acceptable excuse for failing to meet the course requirements. If you fail to meet your responsibilities, you do so at your own risk. Instructor As your instructor in this course, I am responsible to: Responsibilities grade the assignments and post scores within one week of the end of the week in which they are submitted; and read any e-mail sent by students and respond accordingly within 48 hours. Attendance Please post a "progress report" once a week in the "Progress Report" discussion area Policy within CougarView to indicate your progress on the course readings, assignments, and final project. If you do not post a progress report two weeks in a row, you may receive a WF. If an emergency prevents you from posting a progress report or an assignment, please contact me to make alternative arrangements. Tentative The following is the tentative schedule for the course. It is subject to change. A Schedule current schedule will be maintained in the CougarView calendar. WEEK DATES READINGS/TOPICS 1 1/7 - 1/13 Chapter 1: An introduction to web programming with Java Chapter 2: How to install and use Tomcat Chapter 3: How to use the NetBeans IDE 2 1/14 - 1/20 Chapter 4: A crash course in HTML Chapter 5: How to develop JavaServer Pages 1/21 Martin Luther King Holiday 3 1/22 - 1/27 Chapter 6: How to develop servlets 4 1/28 - 2/3 Chapter 7: How to structure a web application with the MVC pattern 2/3 Final Project Proposal Due 2/4 - 2/10 Chapter 8: How to work with sessions and cookies 2/10 Programming Assignment 1 Due 6 2/11 - 2/17 Chapter 9: How to use standard JSP tags with JavaBeans Chapter 10: How to use the JSP Expression Language (EL) 7 2/18 - 2/24 Chapter 11: How to use the JSP Standard Tag Library (JSTL) Chapter 12: How to use custom JSP tags 2/24 Programming Assignment 2 Due 2/25 - 3/3 Chapter 13: How to use MySQL as the database management system 3/3 Final Project Analysis and Design Due 3/4 - 3/10 Spring Break - no assignments or discussions 3/11 - 3/17 Chapter 14: How to use JDBC to work with a database 3/17 Programming Assignment 3 Due 10 3/18 - 3/24 Chapter 16: How to use SSL to work with a secure connection 11 3/25 - 3/31 Chapter 17: How to restrict access to a web resource 3/31 Programming Assignment 4 Due 12 4/1 - 4/7 Chapter 19: How to work with listeners 13 4/8 - 4/14 Chapter Chapter Chapter Chapter 5 8 9 21: 22: 23: 24: An introduction to the Music Store web site The Download application The Cart application The Admin application 4/14 Programming Assignment 5 Due 14 4/15 - 4/21 Chapter 15: How to use JavaMail to send email 15 4/22 - 4/28 Chapter 18: How to work with HTTP requests and responses Chapter 20: How to work with filters 5/5 Final Project Implementation and Documentation Due Assignment All assignments are due during the week in which they are assigned and no later than Due Dates 11:59 PM (23:59) (Eastern Time). The due dates for the assignments will be posted in the Assignments section and in the course's calendar. Assignments submitted or modified after the assignment due date will assessed a late penalty as described below. Late If circumstances prevent the timely posting of assignments, please notify me by e-mail Assignments within CougarView. Unless you make prior arrangements with me, any assignment submitted after its assigned due date will be considered late. Late assignments may be submitted up to three days beyond their assigned due date and are subject to a 10% reduction in points for each day they are submitted beyond the assigned due date. Assignments not submitted by the assigned due date or within the three days following the assigned due due will be assessed a grade of zero (0). Because of course grade reporting requirements, the final deliverable for the course project must be submitted by the assigned due date -- no exceptions! Any final deliverable not submitted by the assigned due date will be assessed a grade of zero (0). Extra Credit There are no provisions for extra credit in this course. Incompletes If unusual circumstances preclude you from completing the course and you have satisfactorily completed all the other course requirements up until that point, I will award you a grade of "Incomplete" provided you contact me regarding the unusual circumstances and you agree to certain conditions for removal of the "Incomplete." You must, however, contact me and arrange for the Incomplete as soon as you are aware that you will be unable to complete the course and before the last day of class. Technical You must have the ability to administer your own computer system(s), and to install Support and configure your own software. Ordinarily, I can only provide limited support. Academic Academic dishonesty includes, but is not limited to, activities such as cheating and Honesty/ plagiarism Plagiarism (http://ace.columbusstate.edu/advising/a.php#AcademicDishonestyAcademicMisconduct). Policy It is a basis for disciplinary action. Any work turned in for individual credit must be entirely the work of the student submitting the work. All work must be your own. For group projects, the work must be done only by members of the group. You may share ideas but submitting identical assignments (for example) will be considered cheating. You may discuss the material in the course and help one another with debugging; however, any work you hand in for a grade must be your own. A simple way to avoid inadvertent plagiarism is to talk about the assignments, but don't read each other's work or write solutions together unless otherwise directed by me. For your own protection, keep scratch paper and old versions of assignments to establish ownership until after the assignment has been graded and returned to you. If you have any questions about this, please contact me immediately. For assignments, access to notes, the course textbooks, books and other publications is allowed. All work that is not your own, MUST be properly cited. This includes any material found on the Internet. Stealing or giving or receiving any code, diagrams, drawings, text or designs from another person (CSU or non-CSU, including the Internet) is not allowed. Having access to another person’s work on the computer system or giving access to your work to another person is not allowed. It is your responsibility to prevent others from having unauthorized access to your work. No cheating in any form will be tolerated. Penalties for academic dishonesty may include a zero grade on the assignment or exam/quiz, a failing grade for the course, suspension from the Computer Science program, and dismissal from the program. All instances of cheating will be documented in writing with a copy placed in the School’s files. Students will be expected to discuss the academic misconduct with the faculty member and the chairperson. For more details see the Student Handbook: http://students.columbusstate.edu/policies.php. Confidentially CSU does not guarantee the confidentiality of information shared by students in the of Information course environment. Therefore, you should not share any confidential information from Shared by employers unless explicitly released for public use. Students ADA If you have a documented disability, as described by the Rehabilitation Act of 1973 Accommodation (P.L. 933-112 Section 504) and the Americans with Disabilities Act (ADA) and Notice subsequent amendments and would like to request academic and/or physical accommodations, please contact the Office of Disability Services in the Schuster Student Success Center (room 221), 706-507-8755, as soon as possible. Course requirements will not be waived, but reasonable accommodations may be provided as appropriate.