COP 4813 U01 - Fall 2015 - Web Application Programming



Francisco Ortega, Ph.D.
University Park, ECS 263.

Office hours:Tuesdays from 4:10pm to 6:10pm or by appointment (after class time).

Web Site:

Web Site: FranciscoRaulOrtega.Com

Lecture time: Tuesday and Thursday 18:25-19:40

Final Exam Date: 12/10/2015, Thursday 5:00PM - 7:00PM (where: Green Library 266)

Location:Green Library - GL 266

Pre-requisites: CGS4854 and COP4005


Required Text Book:

Professional ASP.NET MVC 5 by Galloway et al. - Publisher: WROX

Suggested Text Book:

C# 5.0 In a Nutshell by Albabari and Albabari - Publisher: O'Reilly

GRADING (1000 point scale - 100% = 1000 points):

  • Final Exam 30%. No make-up final.
  • Mid Term 20%. No make-up Mid-term. If you miss the mid-term, you can use the final grade to replace your mid-term.
  • Quizzes 20%. No make-up quizzes. You can drop the lowest grade. If the number of quizzes exceed 6, you can drop the two lowest grades.
  • Projects 30%. You can drop the lowest grade. (3 projects each 10%: 1 about core language and 2 about
  • Extra Credit: This will be announced during the semester. I will provide some extra credit either in additional questions on the exams or an extra homework. The extra homework will be towards the end of the semester about or material about web programming covered towards the latter part of the course.


    This class will use C# programming language. No experience with C# is required. However, you are required to understand object oriented programming. This is a programming class. This means that we will be doing a lot of programming. I assume, since this is an elective course that everyone likes programming.

    The C# will be used to program web applications using ASP.NET (MVC). While C# will be the primary language, at times we may need to use other languages (e.g., javascript). There are different aspects that are important to web applications. This class will concentrate in the programming side of web applications and not the stylistic side of it. Of course, you are encouraged to explore further (which may provide extra credit points -- TBA).

    Since this class covers, which is one popular engines for some commercial sites (there are others as popular or more popular) among others, you will need a windows computer (hopefully running Windows 7 or higher), with visual studio 2013 (you may use 2015 but there may be differences), and Internet Informations Services (IIS) which is available to install from your windows computer. If you don't have a windows computer, you can always install a virtual machine on your host os (linux or mac). If this is still not a possible option, we will try to accomodate in SCIS if possible. I will talk more about this during the first day of class.

    If time allows, we may also use some SQL (MS-SQL or similar) server (which will run on your computer) to retrieve and store information. Also, if time allows, we may covered some 3D web concepts towards the end of the class. Anything that is covered during the class will be part of the quizzes and exams, unless I say otherwise.

    It is important that you read ahead and you check moodle often. I will post resources and provide latest news about the course using moodle. I'm here to help but you must have debug your progeram

    One note about debugging your project. It is part of the homework and part of practice to find your solutions during your assigned project. You should not ask me unless you have exhausted all possible resources. Of course, if it is a small question, you can just ask me. However, you have to debug, place breakpoints in the code, and find the problems. This is part of the assigment. All assigments are individual. No group assigments. While you can talk to your peers about the homework at a higher level, you should not share code among each other. Copying will be penalized.

    In terms of quizzes, quizzes will be announced but you can expect to have no more than one a week. In most cases, they will be short (around 20-25 minutes) and it will include some aspects of the assigment or the previous week's lecture. One of the reason that I give quizzes is to make sure you are learning and I'm heading on the right direction. Another reason is that I need to evaluate your understanding of the material for your overall grade. In general, quizzes helps you to do better in the midterm and the final and makes you study a bit more for the class. As opposed to leave everything for the day of the exam.

    There are no make up for exams, quizzes, and/or projects. However, the midTerm, if missed (only if you didn't make it with a documented excuse), you can use your final exam grade to replace the midTerm. The quizzes, I drop the lowest grade (or the two lowest grade -- see above). The projects, I drop the lowest grade of all the projects. This means that you can have something happen and still do well in this class.

    I do not give incomplete grades unless there is a documented and resoanble excused and the moment you ask for the incomplete, you have a passing grade (C or better). Remember with incompletes, next semester, you will not have classes and my time will be very limited, as I have to attend new students and other responsabilities.

    Attendance is optional. If you do attend (which I hope you do), do not talk while someone (a student or myself) is talking during the class. You can interrupt me and ask me a question. However, we can't have private converstations while I'm lecturing or another student is addressing the class for various reasons. First, it makes it harder to teach. Second, I will have to spend time asking you to come back to the main converstation. Finally, it does not create a suitable learning enviroment.
    I welcome you to this class. I hope that by the end, you have become a better software developer, in particular when dealing with web applications. I also welcome feedback.

    Optimistic Tentative Objectives (depending on time):

    (tentative order)

    1. Learn C# programming Language.
    2. Learn how to create Web Applications using ASP.NET MVC.
    3. Understand the architecture in a ASP.NET MVC applications.
    4. Understand Forms and HTML Helpers.
    5. Understand advanced topics about (mvc) including data validation, authorization and security, routing, and, among others.
    6. Understand how to use a database with ASP.NET
    7. Understand Single Page Applications with AngularJS
    8. Learn basic client-side scripting
    9. Learn how to create a simple 3D web application

    Tentative Outline of Class:

    1. C# Core Language
    2. ASP.NET MVC (using book -- most chapters) and client-side scripting
    3. Databases with ASP.NET
    4. Simple 3D Web App

    Student Conduct and Learning Enviroment

    Florida International University is a community dedicated to generating and imparting knowledge through excellent teaching and research, the rigorous and respectful exchange of ideas, and community service. All students should respect the right of others to have an equitable opportunity to learn and to honestly demonstrate the quality of their learning.

    Therefore, all students are expected to adhere to a standard of academic conduct, which demonstrates respect for themselves, their fellow students, and the educational mission of the University. All students are deemed by the University to understand that if they are found responsible for academic misconduct, they will be subject to the Academic Misconduct procedures and sanctions, as outlined in the Student Handbook:


    Can I change this document?

    From Faculty's handbook:

    Instructors retain the right to modify the course syllabus for any reason throughout the semester provided that:

  • Fair and adequate notice is given to enrolled students either by e-mail, in writing, or through online publishing.

  • Modifications to the syllabus are not arbitrary or capricious.

  • Students are not unfairly disadvantaged by mid-semester changes to grading standards, attendance standards, or performance measures.

    NOTE: In most cases, I will only change this document to acommodate the entire class. I will let you know if there are any changes.


  • Code of Academic Integrity:
  • University Policies: academic misconduct, sexual harassment, religious holydays, and information on services for students with disabilities
  • If you have any disability make sure you let me know with time to make any accommodation. Also, please make sure you check the FIU Disability Center web site at : I will be more than happy to accommodate any part of this class, based on the recommendation of DRC.

    Incomplete Grade Policy:

    See "About Course" section (above).

    Important Dates:

  • Aug. 31, 2015 : Last day to add courses; last day to drop courses or withdraw from the University without incurring financial liability for Tuition and Fees.

  • Sept. 18, 2015: Last day to apply for Fall 2015 graduation

  • Sept. 18, 2015: Last day to withdraw from the University with a 25% refund of Tuition

  • Nov. 2, 2015: Deadline to drop a course with a DR grade

  • Nov. 2, 2015: Deadline to withdraw from the University with a WI grade

    Holidays (university will be closed)

  • Sept. 7, 2015: Labor Day

  • Nov. 11, 2015: Veterans Day

  • Nov. 26, 2015: Thanksgiving. Note that Nov. 27, 2015 is also considered to be part of Thanksgiving. Nov 28, 2015 has no Saturday classes but University may be open (check if you want to be sure).

    How to do well in this class (applies to all classes)

    The following items are what I found during my studies to help me. Maybe some will help you


    You will need to submit your homework via moodle. When submitting homework to moodle, you will need to upload ONE compress file (zip,rar) with the following format: (or .rar) Each homework will stay if you need to print out the homework or not before coming to class.


    Go to moodle for lectures


  • I will try to accommodate legitimate, verifiable cases of illness and emergencies. I do accomodate religious holydays.

  • Link to undergraduate student misconduct.

  • Link to graduate student misconduct.


  • News will be posted in moodle.