IT 231 Web Development I
Summary
Students design and develop dynamic web applications. Basic skills
in programming, databases and web design are reviewed and developed as
needed. As the final project, students create a database-backed web
application that supports user login and allows users to post content.
We will use the Ruby on Rails framework for web development in this
class.
Course Goals
By the end of the quarter, students will be able to:
- Develop a dynamic web site
- Explain the different components of a web application
- Write scripts for accessing a database
- Write simple page templates using HTML, CSS and dynamic tags
- Design and implement a web application with multiple tables and
access control
Tentative Projects
- Automatically generated web application. Install
Rails. Construct a simple web application with scaffolding.
- Interactive lab. Add data to database with
scaffold. With interactive ruby interpreter, retrieve and modify data
in database. Write simple scripts for data manipulation.
- Creating non-scaffolded controllers and
views. Create application with additional controller and
views that work with a scaffolded components.
- Custom web application. Modify all scaffolded MVC
components for customized web application.
- Preliminary project. Develop a web application
with multiple tables.
- Final project. Final web application with
multiple tables, user authorization and relations between
tables.
Texts
Agile Web Development with Rails 5.1
By: Dave Thomas; David B. Copeland; Sam Ruby
Publisher: Pragmatic Bookshelf
Pub. Date: November 6, 2017
Print ISBN-13: 978-1-68050-251-0
Pages in Print Edition: 496
Text is available online
as Safari
books through the DePaul Library.
Grading
45% (90 points) |
Projects |
20% (40 points) |
Midterm exam |
35% (70 points) |
Final exam |
Students receiving more than 90% of possible points are guaranteed at
least an A-, more than 80% at least a B-, more than 70% at least a C-,
and more than 60% at least a D.
Policies
Students are expected to attend every class. Attendance will be
informally kept even though it is not a part of the course grade.
Tests and quizzes can be made up with a serious documented excuse
(e.g. illness, death in the family) and must be arranged as soon as
possible. Arrangements involving other excuses require prior
permission from the instructor.
The goal of assignments is to practice the concepts taught in
class. You are expected to do your own assignments. However, some
collaboration with other students is allowed and even encouraged. The
following types of collaboration are allowed:
- Discussing strategies for solving a problem
- Explaining why a Web page does not work
- Reviewing and testing someone else's Web pages
- Using HTML and JavaScript code provided by the instructor
and texts
The following types of collaboration are not allowed:
- Copying someone else's HTML or Javascript code
- Literally telling someone what code to write
Engaging in these last two types of collaboration will be
considered a violation of the university's policy on academic
integrity. Violators will receive a 0 for the corresponding
assignment and will be reported as required by the policy.
Late assignments will be accepted up to three days late with a one
point penalty. Assignments submitted more than 3 days after the due date
will not be accepted without an excused absence cleared
by the dean
of students office.
Additional assignments for extra credit will not be offered.
All grade challenges must be submitted in writing and include an
explanation why the given score or grade should be reconsidered.
Prerequisites
The official course prerequisite is IT 130. Students should be
familiar with elementary programming concepts including the use of
variables, assignment statements and conditionals (e.g. if
statements). Students should also have prior experience
formatting web pages using HTML and CSS. This course is not
intended for experienced programmers.
Tentative Schedule
Week |
Topic |
Reading |
Assignment Due or Exam |
Mar 26 |
Course overview, Rails installation, MVC Overview, scaffold creation |
Intro, Ch. 1 - 3 |
? |
Apr 2 |
Models, validation, ORM and Rails console |
Ch. 3, 4, 19, 20 |
Assignment 1 |
Apr 9 |
Ruby overview, arrays, hashes; ORM and console examples |
Arrays in Ch. 4, Ch. 20 |
Assignment 2 |
Apr 16 |
Adding simple controllers and views, layouts, view helpers |
Class notes |
Assignment 3 |
Apr 23 |
Forms, Helpers and Parameters |
Ch. 8 |
Assignment 4 |
Apr 30 |
Exam week |
Class notes |
Midterm Exam |
May 7 |
Relations between data models, migrations |
Ch. 9, 20 |
? |
May 14 |
Examples with relations and migrations |
? |
Assignment 5 |
May 21 |
Session variables, authentication |
Ch. 15, 21 |
? |
May 28 |
Advanced topics, review |
No class Monday (Memorial Day), Review notes |
Assignment 6 |
Final Exam
The final exam is held Wednesday June 06, 2018, from 8:30 AM to 10:45 AM
This syllabus is subject to change as necessary during the quarter. If a change occurs, it will be thoroughly addressed during class, posted under Announcements in D2L and sent via email.
Evaluations are a way for students to provide valuable feedback regarding their instructor and the course. Detailed feedback will enable the instructor to continuously tailor teaching methods and course
content to meet the learning goals of the course and the academic needs of the students. They are a requirement of the course and are key to continue to provide you with the highest quality of teaching. The
evaluations are anonymous; the instructor and administration do not track who entered what responses. A program is used to check if the student completed the evaluations, but the evaluation is completely
separate from the student’s identity. Since 100% participation is our goal, students are sent periodic reminders over three weeks. Students do not receive reminders once they complete the evaluation.
Students complete the evaluation online in CampusConnect.
This course will be subject to the university's academic integrity policy. More information can be found at http://academicintegrity.depaul.edu/ If you
have any questions be sure to consult with your professor.
All students are expected to abide by the University's Academic Integrity Policy which prohibits cheating and other misconduct in student coursework. Publicly sharing or posting online any prior or current materials from this course (including exam questions or answers), is considered to be providing unauthorized assistance prohibited by the policy. Both students who share/post and students who access or use such materials are considered to be cheating under the Policy and will be subject to sanctions for violations of Academic Integrity.
All students are required to manage their class schedules each term in accordance with the deadlines for enrolling and withdrawing as indicated in the University Academic Calendar. Information on enrollment, withdrawal, grading and incompletes can be found at http://www.cdm.depaul.edu/Current%20Students/Pages/PoliciesandProcedures.aspx.
Students who feel they may need an accommodation based on the impact of a disability should contact the instructor privately to discuss their specific needs. All discussions will remain confidential.
To ensure that you receive the most appropriate accommodation based on your needs, contact the instructor as early as possible in the quarter (preferably within the first week of class), and make sure that
you have contacted the Center for Students with Disabilities (CSD) at:
Lewis Center 1420, 25 East Jackson Blvd.
Phone number: (312)362-8002
Fax: (312)362-6544
TTY: (773)325.7296