Csc417 User Interfaces
Spring 2018

Dr. Robert Kline
Office: 25 Univ. Ave. (UNA), #138
Phone: 610-436-2181

Office Hours for Spring 2018

Mo,We: 4:15–5:45
Tu,Th: 1:00–2:00
website (available through D2L)
PHP in Action
Dagfinn Reiersol, et. al.
Manning, 2007
isbn: 978-1-9323-9475-7
This course deals with database-driven graphical user interface applications. The Model-View-Controller software paradigm is used as a guiding principle for the applications developed. The course features applications using Java-based as well as web-based components with a modern server-side scripting language such as PHP. Most of the course work is based on developing a complex, large-scale web database system with the goal of implementing this system within a web application framework. PREREQ: CSC 241.
The course content is based primarily on the instructor's notes. Java programming knowledge is assumed. Rudimentary SQL will be taught as needed. The Php language will be taught from scratch. for web programming. A background in HTML and CSS is helpful, but not required; it is assumed that, this being a senior-level course, you can learn these technologies as needed. The course outline is as follows:
  • Java JDBC database programming.
  • MVC design and Java ORM usage
  • Java FX8 components, GUI applications
  • Php language basics and form entry scripts using Smarty Templates.
  • Sessions and state management.
  • Php database access with ORM (Object Relational Mapping), currently RedBeanPHP
  • jQuery and AJAX.
  • A Php-based Web framework, currently FuelPHP with Smarty Templates
  • Forms, ORM usage, Template construction in the Web Framework
The NetBeans IDE is assumed to be the programming basis throughout the course. You should use the latest version, 8.2, as of Spring 2018. Also you must use a rececent Java 1.8 version.
Your grade is based on three equally weighted programming projects:
  • Project 1 (Java/JDBC/JavaFX)
  • Project 2 (Php Web/Database)
  • Project 3 (Web Framework/Database)

Course Grades Evaluation results are normally returned within 2 class periods after a test or due date of homework/program. It is your responsibility to ask me for them if you miss the class when they are returned.

I do not post grades on D2L. You should be able to keep track of your own grades and compute your overall average. See Csc417 Course Grade.

The correspondence of a percentage to a letter grade is based on a standard formula:
PercentageLetter Grade
93 – 100A
90 – 92A-
87 – 89B+
83 – 86B
80 – 82B-
77 – 79C+
PercentageLetter Grade
73 – 76C
70 – 72C-
67 – 69D+
63 – 66D
60 – 62D-
0 – 59F

You are expected to behave in a responsible manner.
  • Unless you let me know in advance, STAY IN YOUR SEAT THE ENTIRE CLASS PERIOD.
  • If you miss a test, contact me by the day of the test and provide a valid reason for missing; otherwise, you will receive a failing grade for the test missed.
  • It is your responsibility to catch up if you miss a class. Missing more than 5 classes may make your final percentage grade be reduced by up to 7%.
It is the responsibility of each student to adhere to the WCU's standards for academic integrity. Violations of academic integrity include any act that violates the rights of another student in academic work, that involves misrepresentation of your own work, or that disrupts the instruction of the course. Other violations include cheating on assignments or examinations; plagiarizing, which means copying any part of another's work and/or using ideas of another and presenting them as one's own without giving proper credit to the source; selling, purchasing, or exchanging of term papers; falsifying of information; and using your own work from one class to fulfill the assignment for another class without significant modification. Proof of academic misconduct can result in the automatic failure and removal from the course. For questions regarding Academic Integrity, or the Student Code of Conduct, students are encouraged to refer to the Computer Science web page, the Undergraduate Catalog, the Ram's Eye View, and the WCU website.
It is expected that faculty, staff, and students activate and maintain regular access to University-provided email accounts. Official university communications will be sent through this email account and you are responsible for obtaining such official communications. Failure to access this email account will not exempt individuals from the responsibilities associated with this course.
West Chester University will make accommodations for persons with disabilities. To know more about WCU's Services for Students with Disabilities (OSSD), contact the OSSD located at 223 Lawrence Center. See the website OSSD website. If you have a disability that requires accommodations under the Americans with Disabilities Act (ADA), please present your letter of accommodations to OSSD as soon as possible so that OSSD can support your success in an informed manner. Accommodations cannot be granted retroactively.
West Chester University and its faculty are committed to assuring a safe and productive educational environment for all students. In order to meet this commitment and to comply with Title IX of the Education Amendments of 1972 and guidance from the Office for Civil Rights, the University requires faculty members to report incidents of sexual violence shared by students to WCU's Title IX Coordinator. The only exceptions to the reporting obligation are when incidents of sexual violence are communicated by a student during a classroom discussion, in a writing assignment for a class, or as part of a University-approved research project. Faculty members are obligated to report sexual violence or any other abuse of a student who was, or is, a person under 18 years of age when the abuse allegedly occurred to the official designated in the University protection of minors policy. Information regarding the reporting of sexual violence and the resources that are available to victims of sexual violence is set forth in the Social Equity website.
Students are encouraged to sign up for the University's free WCU ALERT service, which delivers official WCU emergency text messages directly to your cell phone. For more information, visit To report an emergency, call the Department of Public Safety at 610-436-3311.
Students are advised to read and comply with the excused absences policy for university-sanctioned events in the WCU Undergraduate Catalog. Please note that the responsibility for meeting academic requirements rests with the student. This policy does not excuse students from completing required academic work, and that professors can require a fair alternative to attendance on those days that students must be absent from class in order to participate in a university-sanctioned event.
The following are clear, measurable and observable outcomes from taking this course:
  • The student will learn to apply the MVC (Model-View-Controller) paradigm to a variety of graphical user interfaces
  • The student will learn to create application which includes a graphical user interface front end and database back end.
  • The student will learn web application programming skills in one key new scripting language (Php) plus several other auxiliary languages (HTML).
  • The student will learn to develop large scale web applications using a web development framework, in which key programming components are split into multiple parts according to the MVC design principle.

Measuring and assessing student learning outcomes

  • Programs will measure and assess competencies in learning outcomes (a) and (b).
  • Program 2 will measure and assess competencies in learning outcome (c).
  • Program 3 will measure and assess competencies in learning outcome (d).

ABET-accredited programmatic student learning outcomes

  • An ability to apply knowledge of computing and mathematics to the discipline.
  • An ability to analyze a problem, and identify and define computing requirements appropriate to its solution.
  • An ability to apply design and development principles in construction of software systems of varying complexity
  • All Computer Science majors will demonstrate proficiency in the latest, cutting-edge technology.