ISMG 4800 - eBusisness Systems Development
Fall 2009

Instructor: Dr. Dawn Gregg
Office Location: 1250 14th Street - Office 256
Office Phone: (303) 315-8449
Email: dawn.gregg@ucdenver.edu
Home Page: http://dawngregg.com



Course Description

This course is an introduction to distributed client/server development and the WWW environment.  It investigates the details of HTML, JavaScript, Dynamic HTML, Database driven Web content, and PHP.

TOPICS Understanding the principles of web page and web site design; selection of client-server programming language environment; understanding the software engineering principles for interactive multimedia development, especially the standard object models, scripting languages, and database connectivity; testing; software quality assurance;  and the process of publishing Web pages.

Prerequisites

This course requires prior programming experience:

    ISMG 2200 and 4500 (or equivalent)

Required Texts

Learning PHP, MySQL, and JavaScript: A Step-by-Step Guide to Creating Dynamic Websites

Robin Nixon
O'Reilly Media, Inc.
  © 2009
ISBN 10: 0-596-15713-4
 

  • In addition, there are lecture notes available on the course outline & notes page. You will need to print them out and bring them to class.

Software

Computer Lab

Methods

  • Be Prepared: It is assumed that you will read the assigned chapters each week. The topics covered in this course are difficult to master without substantial amount of effort. You will need a great deal of time for experimenting and practicing code.
  • Cheating: All quizzes, tests and programs are to be done individually. Academic Dishonesty is not tolerated and will result in a zero on the assignment, and a one letter grade reduction in the course and reporting of the incident to the College's Internal Affairs Committee. The following are considered Academic Dishonesty:
    • Copying the work of current or past ISMG 4800 students
    • Working collaboratively on individual assignments except to provide debugging assistance
    • Providing assignment solutions (total or partial) to any other ISMG 4800 student!
    • Copying the code or design of a past or current ISMG 4800 project
    • Copying the code or design of internet sites or other sources without crediting the source
    • Using a tutor or any other person to write all or part of your code for you.

    I reserve the right to ask any student to explain the logic used in their programs purpose of each line of code it their assignments.  If a student can not explain what they have done, it will be assumed that they did not do their assignment themselves.

    Cheating on an exam will result in an automatic F for the course!  The penalty for subsequent academic dishonesty incidents can involve removal from the IS program and/or from CU Denver.

  • Late work: Projects and Assignments will not be accepted late. There will be group discussions regarding the assignments immediately after they are due and thus it is imperative that work be completed ON TIME Assignments received after the due date will receive a 0.

    I do understand that sometimes work or other pressures make it difficult to submit an assignment on time - so I will accept up to one assignment late per student. Any work accepted late will be graded down a minimum of one full grade. In the case that you will not be able to complete work the week it will be due, please contact me prior to the due date to arrange an alternate due date for the assignment.  
     
  • Email: My courses can be difficult and often students get to places in their assignments where they do not know what to do next. I encourage you to ask questions in class, office hours and via email.  Always include the course number (ISMG 4800) and your name in the email.

    When asking a question via email please do the following:

    • Clearly give me a specific question. 
    • If you have an error message(s) you do not understand put a copy of the error message(s) in the email and attach your code so I can see where it occurs.
    • If your code compiles but runs strangely describe the behavior and attach your code (e.g. I input the id and then nothing happens)
    • If you do not understand what is expected - explain what parts of the assignment you do not understand.
    • If you are having difficulty deciding how to approach a problem - describe to me what you think you should be doing and I will let you know what you have right & where you might be wrong.
    • DO NOT email me and say here is what I have so far what do I do next...

    Typically, I allow students to turn in assignments via email.  However, it is the student's responsibility to ensure that I actually received the assignment.  I recommend that students CC themselves when emailing an assignment to me so they know the email was actually sent.  In addition, if you do not receive a reply indicating that I received the assignment within 24 hours the student will need to resend the assignment and/or bring it in by hand.  An assignment that is received late due to an email problem is still considered late.  Students need to get a reliable email provider if they intend on submitting assignments via email.
     

  • Getting behind: This is a difficult course and requires a significant amount of work.  DO NOT GET BEHIND.  New concepts build on earlier concepts and if you skip even one week you can find yourself so far behind that you can not catch up with the rest of the class.  Students who miss class or skip assignments usually wind up failing the course.

Course Assignments and Requirements

Learning to decompose a problem and develop a software solution involves doing. Students cannot just listen to a lecture and know how to develop code. To improve students’ ability to program I have numerous short assignments and longer projects that give students practice developing and debugging business programs. This is graded and returned as soon as possible so students know how they are doing in my class. This section outlines in great detail and fully explains the course assignments and requirements.  I urge you to read it carefully and more than once!

  • Class Participation: To allow students to learn from one another I have numerous individual and small group projects that are completed in class. I also have students discuss their approach to their project in small groups after the project has been completed.  These activities can require students prepare something prior to class to be used in the discussions. This allows students to think about problems individually to a point where they understand how the problem can be solved but also allows students to discover alternative ways of approaching problems that they might use in future assignments or in industry. I feel this maximizes student understanding of the material and provides for a more stimulating classroom environment.
     
  • Homework: You will complete several short homework assignments during the course of the semester. There will be several different types of homework assignments.  Design assignments where students will be responsible for creating and documenting their Web site designs, coding assignments for the student to become comfortable with different programming concepts and become familiar with how the PHP development environment you are using works.   And testing assignments, these assignments will be used for the students to become familiar with the testing requirements that must be used before deploying any software system.
     
  • Projects: There will be a semester long project completed in a series of phases. The project involves designing and building a larger scale Web site containing multiple Web pages and embedded client-side or server-side code.  It is designed to resemble real projects that might be used in a business setting. Each project segment generally requires a substantial amount of effort on the part of students (15 - 40 hours per project depending on the student) so please allow enough time to complete the project before the due date.  All projects build on prior project so skipping a project will make it difficult to complete subsequent projects.

    Projects will be evaluated based on three major criteria: Compliance with project requirements, Quality of the source code/design and Project performance.  A grading sheet, distributed with each project’s specifications, will specify the distribution of points for the project.
    • Compliance: Projects will be evaluated to determine whether the code meets all of the requirements set forth in the assignment.  That is - did the student write code to do all of the tasks the program needs to perform?
    • Quality: Project quality consists of several factors including:
      • Project Flow: The web site & programs should be laid out logically such that the order that the activities that are performed make sense in the context of the problem.
      • Format:  For Web courses format includes the layout and design of the visible Web page as well as the lay-out and formatting of the hidden HTML and embedded code.  Design expectations for Web pages will be discussed in class.  The embedded code should also include adequate white-space in the program to improve readability. Insert blank lines to group sections of code. Use indentation to improve readability of control flow. Avoid confusing use of opening/closing braces.
      • Modularity in Design: Avoid accomplishing too many tasks in one function/on one Web page.
      • Design Quality: The design chosen should be clear and concise.  Is the solution chosen excellent, better than average, average or worse than other ways of approaching the given problem?
    • Performance: A good Web site needs to run and produce the correct output. A design that does not run will receive a zero for program performance.  The program will be tested with a variety of inputs.  To maximize your score your program should not crash for any expected input and it should produce the correct answer.  The program should also facilitate repeated use when used interactively and should allow easy exit. Requests for interactive input from the user should be clear. Incorrect user inputs should be captured and explained. Outputs should be attractively-formatted using appropriate HTML tags (e.g. in a table with headings, labeled, or formatted as currency if appropriate).

    Projects are typically turned in in class on a floppy disk or submitted via email.  When submitting a project, it is the students responsibility to submit all related files necessary for the project (or else I can not test your code!). When handing in a Web assignment - you will also be required to post the Web site on the course Web server.

    If you are not satisfied with your grade, you may request a re-evaluation. Do not change the relevant files on your disk or online. Re-evaluation may result in a higher or a lower score for the Project.
     

  • Exams: There will be one mid-term exam and one Final exam. The exam will be given in class only on the mentioned dates.  Question Formats include: fill-in-the-blank, short essay questions, writing of algorithms, filling key steps in incomplete algorithms, writing JavaScript and PHP programs or functions.  You will be allowed to bring one page of notes into the exam (8 1/2" by 11) written on both sides of the paper. No other notes may be used during the exam and electronic devices of any kind (e.g. cell phones, calculators, laptop computers, dictionaries etc.) must be turned off and properly stored during the examination period.

    Failure to attend your exam will result in a zero for the examination.  In cases of extremely extenuating circumstances (i.e. documented circumstances clearly beyond the student's control) a make-up exam may be given.  However, the student must request the make-up exam in writing within 24 hours of the original exam date.

    If you know in advance that you will not be able to attend an exam because of extenuating circumstances beyond your control you may request a make-up exam.  Requests for make-up exams must be made in writing at least 1 full week prior to the class section in which the exam is scheduled to be given.  If the request for a make-up exam is approved, a make-up exam will then be scheduled.

    24 hours prior to a scheduled make-up exam, it is the student's responsibility to confirm via email that they still plan on attending the make-up exam at the given date and time.  If the student no longer needs to take a make-up exam - the student must cancel the make-up exam via email 24 hours in advance of the scheduled make-up exam time.  Failure to attend a make-up exam will result in a 0 for the exam.

    Note: although you will not be permitted to keep any of the examinations, I will bring the examinations to class period following the exams to allow students to review their answers. I will also make exams available for students to review during my office hours.

Grading

Final Grades for this class will be based on your performance in classwork & homework problems, projects, a midterm and a final exam. Weightings will be applied as follows:  

A. Class work and Homework 20%
B: Projects (3) 30%
C: Midterm Exam 25%
D: Final Exam 25%


Letter Grades are typically assigned as follows:

A        (4.0)          93% - 100%     superior/excellent
A-               (3.7) 90% - 92.999%      
B+ (3.3) 87% - 89.999%  
B (3.0) 83% - 86.999%            good/better than average
B- (2.7) 80% - 82.999%      
C+ (2.3) 77% - 79.999%  
C (2.0) 73% - 76.999% competent/average
(minimum passing b-school core)
C- (1.7) 70% - 72.999%      
D+ (1.3) 67% - 69.999%  
D (1.0) 63% - 66.999% minimum passing non-core
D- (0.7) 60% - 62.999%  
F (0.0)   0% - 59.999% failing

 

Note: Grading policies of the CU Denver Business School state that the average GPA across all students in a class should generally fall within the following range: 2.3 (C+) to 3.0 (B) on a 4.0 scale.  Therefore, if necessary, the ranges above will be modified so the average GPA across all students in the class falls with in the recommended range.


Important Dates

Students are responsible for knowing all academic dates for each semester they are enrolled. Please see the Registrar's website for the full academic calendar.


Updated 8/11/2009
by Dawn G. Gregg