MIS3502 – Application Integration and Evaluation Fall 2010 (Section 001) Paul Weinberg Office: Speakman 209 Phone: (215) 204-9563 Alter 603 Instructor Class Location Email: weinberg@temple.edu Office Hours: To be announced on the Community Site T, Th 2 –3:20 Course Objectives Translate business requirements to an object-oriented application design Integrate data from multiple sources into a single, data-driven application Understand the mechanics of server-side application architectures with an particular emphasis on ASP.NET Develop database-driven applications using C# and ASP.NET Understand service-oriented architectures and their relationship to traditional object-oriented development Prerequisites MIS3501 – Object-Oriented Development I and MIS2502 – Database Management Systems Textbooks and Supplies Recommended Textbook Software used in the course Murach, J. and Lowe, D., “Murach’s C#” (2008) Mike Murach & Associates, ISBN 1890774375 (for reference and only if you already have it from MIS3501) Visual Studio .net 2008 Available in Speakman Hall and Alter labs You can also download a free copy of Visual Studio. Instructions are located at http://community.mis.temple.edu/technology/softwarelicenses/ Please do not use Visual Studio .net 2010. Assignments and projects submitted using Visual Studio .net 2010 will not be graded. Evaluation Item Exams (3) Projects (3) Homework Assignments (8) Percentage 70% 20% 10% Final grades are not rounded in calculating term letter grades. Scale 94 – 100 90 – 93 87 – 89 83 – 86 80 – 82 77 – 79 A AB+ B BC+ 73 – 76 70 – 72 67 – 69 63 – 66 60 – 62 Below 60 C CD+ D DF MIS3502 Syllabus Page 2 Attendance Policy This class combines discussion, lecture, and in-class exercises. To ensure you get the most from the course, I expect full attendance by every member of the class. I also expect you to arrive on time to class. MIS Community Site This semester we’ll be using the MIS Community Site instead of Blackboard. It has many of the same features as Blackboard, such as the ability to retrieve assignments and code examples, read course announcements, and get your grades. However, it is structured like a blog-based social networking site. You can use your AccessNet ID to log onto the site. The URL for the site is: http://community.mis.temple.edu/mis3502sec001f10/ A word of caution: Be careful posting assignment or project code to the MIS Community Site! For more information, read the section of the syllabus entitled “Plagiarism and Academic Dishonesty.” Exams There will be two midterm exams and a final exam. The dates of the midterm exams are posted in the schedule (below). Missed exams cannot be made up, regardless of the reason for absence. Assignments and Projects There are two types of homeworks – assignments and projects. The instructions are posted on the Community Site. Most of the homework assignments (Assignment 2 through 8) will involve doing problems from the course notes. Make sure you do all of the steps as described in the notes – the problems generally build on the step-by-step instructions in the notes. DO NOT just skip to the problems or you won’t be able to complete the assignment! These assignments will be graded pass/fail – you must successfully complete the problems in order to receive credit. Before you complete the assignments, be sure to read the Assignment Guidelines document posted with the assignments. The first assignment is a little different, and will involve a series of short-answer questions. That assignment will also be graded pass/fail. Below is a list of the problems due for each assignment. Check the course schedule for the due dates for both the homework assignments and the projects. Fall 2010 Paul Weinberg MIS3502 Syllabus # 1 2 3 Assignment Review of Concepts Overview of ASP.NET “Codeless” ASP.NET database application using DetailsView 4 5 Validation controls in ASP.NET Coding ADO.NET Objects 6 Working with Multiple Tables 7 8 Reading and Writing XML in C# Working with Web Services Page 3 Turn-in Completed document Problem 2 (program) Completed walkthrough (program) Problem 1 (program) Problems 1, 2, and 3 (program) Problems 1 and 2 (program) Problem 1 (program) Problems 1 and 2 (program) Projects will be graded on a numeric (0 – 100) scale. Fall 2010 Paul Weinberg MIS3502 Syllabus Page 4 Late Homework Policy There are two types of homeworks in this course: assignments and projects. All assignments and projects must be submitted to me through email. The time stamp on your email will be used to determine if the assignment or project has been submitted on time. Assignments and projects are considered late if turned in after the beginning of the class the day it is due. No late assignments and projects will be accepted without penalty. The subject of your email must contain the course name, your name, and the assignment/project name. Otherwise you may not receive credit for the submission. For example: MIS3502: Bob Smith, Overview of ASP.NET Submitted folders must be in zip format. Do not use other archive formats (for example, rar). Rename the zip file to your last name. For example: Smith.zip If you don’t do this, you may not receive credit for the assignment. Assignments and projects will be assessed a 10% penalty each day they are late. No credit will be given for projects and assignments turned in more than one week past the due date. However, you still must turn in every project and assignment, even if you will receive no credit for it. If you do not submit an assignment or project, there will be an additional 10% penalty deducted from your final grade. For example, if you turn in a project more than a week late, you’ll lose about 6.5% off of your final grade, but if you do not turn in the project at all you’ll lose 16.5% off your final grade! You are responsible for submitting the correct assignment/project and the correct files. I will grade exactly what you have submitted by the deadline. If you submit the wrong version of your assignment/project but the assignment/project is complete, I will grade it. If you submit the wrong files, or do not attach anything to your submission at all, you will not get a grade. If you submit additional material after the deadline to complete an assignment/project, I will grade it but the entire assignment will be considered late and subject to the lateness penalty. However, once an assignment/project has been graded, it will not be regarded. Equipment failure, Septa service issues, and weather are not acceptable reasons for turning in an assignment or project late. You should always make a backup of your files (if it’s really important, make two backups). Late or missing assignments/projects will not be accepted after the last class meeting. Be sure you check the Community Site gradebook and resolve any missing assignment issues by the end of the last day of class. Fall 2010 Paul Weinberg MIS3502 Syllabus Page 5 Classroom Etiquette Your behavior in class directly impacts the value you and your fellow students gain from the course. To that end, the following are rules of conduct in this class: Do not arrive late or leave early. Do not leave in the middle of the class. Turn off all cell phones and pagers while you are in class. You can use a computer as long as it is related to the class. Do not use your computer to check your email, browse the Internet, or send instant messages during the class. Do not engage in side discussions while others (including me!) are speaking. Plagiarism and Academic Dishonesty Plagiarism and academic dishonesty can take many forms. The most obvious is copying from another student’s exam, but the following are also forms of this: Copying material directly, word-for-word, from a source (including the Internet) Using material from a source without a proper citation Turning in an assignment from a previous semester as if it were your own Having someone else complete your homework or project and submitting it as if it were your own Using material from another student’s assignment in your own assignment Plagiarism and cheating are serious offenses. Penalties for such actions are given at my discretion, and can range from a failing grade for the individual assignment, to a failing grade for the entire course, to expulsion from the program. In an application development course like this one it is sometimes difficult to figure out where the line is between helping a fellow student and academic dishonesty. I want you to be able to discuss the projects and assignments with each other, but you should do your own work. There are some simple rules to follow: Never share an entire solution (application) with another student. Do not share with another student, or accept from another student, large blocks of code (more than 3 or 4 lines per project or assignment). Do not do part (or all) of another project assignment for another student. What you can do: Help another student fix a compilation or logic error in their code. Explain to another student what I’m asking for in an assignment. Help another student think through a problem. If you have a concern about what constitutes acceptable behavior, come ask me before you do it! Fall 2010 Paul Weinberg MIS3502 Syllabus Page 6 For more information, refer to the Temple University student code of conduct, available at http://www.temple.edu/assistance/udc/coc.htm. Student and Faculty Academic Rights and Responsibilities The University has adopted a policy on Student and Faculty Academic Rights and Responsibilities (Policy # 03.70.02) which can be accessed through the following link: http://policies.temple.edu/getdoc.asp?policy_no=03.70.02. Fall 2010 Paul Weinberg MIS3502 Syllabus Page 7 Schedule (Keep in mind that all dates are tentative) You are expected to review the assigned readings before each class. Additional reading material may be assigned throughout the course of the semester. Day Topics Course Materials Assignments Due Week 1 8/31 Course Introduction Integration of applications 9/2 Review of concepts: Object syntax and notation, data types, objects within objects Week 2 ASP.NET Architecture: Web-based Presentation: ASP.NET application development Architecture Creating a simple ASP.NET application Class notes: Overview of ASP.NET Creating a simple ASP.NET application Class notes: Overview of Posting data and the Page_Load() method ASP.NET Week 3 9/7 9/9 9/14 9/16 9/21 9/23 9/28 9/30 Presentation: Role of MIS3502 Presentation: Integration of Applications ADO.NET Data Model The “codeless” ASP.NET database application: The GridView and DetailsView controls Presentation: ADO.NET Architecture Class notes: “Codeless” ASP.NET database application using DetailsView Exercise: Working with a simple ASP.NET application Week 4 Application planning and documentation: Presentation and Overview of analysis and design Handouts: UML and Brief review of UML Systems Analysis Application planning and documentation: Presentation: Developing Test plans a Test Plan and Using the Visual Studio debugger Debugging Week 5 Client-side versus server-side validation Class notes: Validation ASP.NET Validation Controls Controls in ASP.NET Review for the first midterm Week 6 10/5 FIRST MIDTERM EXAM 10/7 Exercise: Unbound controls and the AccessDataSource Week 7 Writing ADO.NET code: Class notes: Coding Commands, Connections, and Readers ADO.NET Objects Working with multiple tables Class notes: Working With Multiple Tables 10/12 10/14 Fall 2010 Assignment 1 Due Assignment 2 Due Assignment 3 Due Project 1 Due Assignment 4 Due Paul Weinberg MIS3502 Syllabus Page 8 Week 8 10/19 10/21 Exercise: Coding ADO.NET objects Introduction to XML Reading and Writing XML 10/26 Reading and Writing XML 10/28 Exercise: Reading XML 11/2 11/4 Review for the second midterm Presentation: Introduction to XML Class notes: Reading and Writing XML in C# Assignment 5 Due Class notes: Reading and Writing XML in C# Assignment 6 Due Week 9 Week 10 11/9 11/11 Project 2 Due SECOND MIDTERM EXAM Week 11 Web services: Service-oriented architecture Class notes: Working with overview Web Services Consuming a simple web service Assignment 7 Due 12/2 Exercise: Consuming a simple web service Week 12 Web references and reading WSDL Class notes: Working with Coding a web service Web Services Exercise: Coding a simple web service Week 13 Web services: Consuming a public web service Maintaining application state: Cookies and Class notes and session variables presentation: Maintaining application state Week 14 Exercise: Working with session variables 12/7 Review for the final exam Project 3 Due 11/16 11/18 11/23 11/30 Assignment 8 Due (Final exam during exam week) Fall 2010 Paul Weinberg