Hamilton Holt School 1 Fall 2010 CMS 371 – Developing Database Applications (CRN 90518) – Last Update July 29, 2010 Professor: Office Hours: E-Mail Phone Numbers: Class Time/Place: Blackboard Web Site Withdrawal Deadline Dr. Larry M. Holt Bush 365B – Mon and Wed 4:00-5:15pm; Tue 5:30-6:30pm lholt@rollins.edu (Winter Park) 407.691.1178 , (home) 321.298.6455 Tuesday 6:45pm-9:15pm in Bush 222 http://blackboard.rollins.edu/ Friday October 29, 2010 Required Resources: Text: Murach’s Visual Basic 2008 by Anne Boehm. ISBN: 9781890774455 or Murach's C# 2008 by Joel Murach. ISBN: 9781890774462 Software: Visual Studio.NET 2008 will be provided free of charge, however, please note VS.NET is a Windows based application. Those who have MACs will need to obtain software (such as Virtual PC or Parallels Desktop) which will permit running Window apps on their computer. This software is not available on school computers, hence you'll need your own computer to complete. Students who did not complete CMS340 during the summer are expected to familiarize themselves with the basics of VS.NET Course Overview: Introduces the student to the fundamentals of relational databases, SQL, and the design/implementation of applications which use databases as their primary ‘back end’ data storage mechanism. Issues such as concurrency, referential integrity, nullability, and n-tier architecture are incorporated into the development of application projects. Class time will typically be spent covering selected topics from the assigned reading material and/or assignments. Lecture will be augmented with visual demonstrations using a computer in the classroom. This approach provides the opportunity to quickly answer "what if I do..." types of questions. The student should understand that the format of this course has no formal lab time. Hence, you are expected and required to spend time on a computer outside of class time. Course Notebook: You are highly encouraged to obtain a notebook in which you record: Notes/questions while reading the text Notes taken during class time (lecture, exercises, etc.) Snippits of code which illustrate a coding technique, solution to a particular aspect of a problem, and examples of 'bad code'. Hamilton Holt School 2 Fall 2010 In most software development positions, you're required to keep such a notebook. It becomes your record of successes, failures, trials, tribulations, etc. You may as well begin to get use to maintaining records such as these. The 'added benefit' in this course is that you may use your notebook during any exercises, labs, and exams. Course Prerequisites: The prerequisites for the course are described in the text on pages ix-x and are summarized below: Programming experience as typicaly learned in a CS1 course (e.g. CMS167) Knowledge of elementary data structures as typically learned in a CS2 course (e.g. CMS170) Understanding of the fundamentals of GUI development using Visual Studio Familiarity with: o object oriented design o separation of functionality o unit testing Blackboard: The http://blackboard.rollins.edu/ web site (referred to a "Bb") will be used as an electronic interface for the course. By virtue of your enrollment in this course, you will automatically be given access to Blackboard. To log into Blackboard go to the above web site, click on the Login button and then enter your Rollins FoxID (ex. jdoe) as your username and your Outlook email password. If you run into any problems after trying several times, send an email to me at lholt@rollins.edu and describe the problem. Be sure indicate your name, the course information, your R-card number, and exactly what you are supplying as your username and password. Once you can login to Blackboard, be sure to go to Tools, Personal Information, Edit Personal Information and make sure the email address is an address that you will be checking because all emails to you concerning this course will be sent to this address. Also under Personal information you can select Change Password to change your password to something more meaningful for you. The following course items can be found on Blackboard: st Syllabus – 1 item under Course Documents Chapter notes, assignments, and solutions – under Course Documents, there will be a folder for each class week in which the notes, assignments, and solutions will be placed. In general, folders will appear a week or so in advance of the meeting. You can download an item by right-clicking and choosing to save it on your computer. Solutions will be automatically timed to appear shortly after the due date/time. Assignments are submitted using the Digital Drop Box under Tools. Please note that in order for me to receive a file, you must use the Send File option and not Hamilton Holt School 3 Fall 2010 the Add File option. So that you will know that I have received your submission, a status announcement will be displayed when you login to this course which will indicate from which students I have and have not received submissions. Questions concerning the course, the material, assignments, etc. will be posted on the Discussion Board. Submissions there are viewable by me and anyone in the class. Furthermore, responses can also be made by me or anyone in the class. By using the Discussion Board, we'll develop a sense of "community" for this course with each student having the opportunity to help out other students and/or benefit from a question asked by another student. Grades can be checked by going to Tools, Check Grade. Grade sheets will be returned using the Digital Drop Box. Normally, I'll post an announcement that grades and grade sheets for an assignment are available. Academic Dishonesty By academic dishonesty I mean presenting as your own work, on any activity or examination, material produced by or in collaboration with others; or, permitting or assisting others to present your work as their own without proper acknowledgement. On any activity, it is acceptable to discuss with another student the meaning of the requirements and general approaches and strategies for handling it. Any cooperation beyond that point, including sharing of specific approaches, algorithms, designs, code or any other answers, is acting dishonestly. During an examination, any discussion, exchange of information, or use of unauthorized material is acting dishonestly. Furthermore, if you observe or have knowledge of such actions and do not report them to the professor, you are also in violation to the honor code and will be subject to discipline. If you commit an act of academic dishonesty on any activity or exam, you will receive a grade of 0 (zero) and will be subject to the Rollins Academic Honesty Policy as described in the Catalogue. Please note that in computer programming assignments, submission of substantially similar code is considered plagiarism. The Hamilton Holt School has requested the following information be included in the syllabus and reinforces the stance described above. THE ACADEMIC HONOR CODE Membership in the student body of Rollins College carries with it an obligation, and requires a commitment, to act with honor in all things. Because academic integrity is fundamental to the pursuit of knowledge and truth and is the heart of the academic life of Rollins College, it is the responsibility of all members of the College community to practice it and to report apparent violations. The following pledge is a binding commitment by the students of Rollins College: The development of the virtues of Honor and Integrity are integral to a Rollins College education and to membership in the Rollins College community. Therefore, I, a student of Rollins College, pledge to show my commitment to these virtues by abstaining from any lying, cheating, or plagiarism in my Hamilton Holt School 4 Fall 2010 academic endeavors and by behaving responsibly, respectfully and honorably in my social life and in my relationships with others. This pledge is reinforced every time a student submits work for academic credit as his/her own. Students shall add to all papers, quizzes, tests, lab reports, etc., the following handwritten abbreviated pledge followed by their signature: “On my honor, I have not given, nor received, nor witnessed any unauthorized assistance on this work.” Material submitted electronically should contain the pledge; submission implies signing the pledge. Students with Disabilities Rollins College is committed to equal access and does not discriminate unlawfully against persons with disabilities in its policies, procedures, programs or employment processes. The College recognizes its obligations under the Rehabilitation Act of 1973 and the Americans with Disabilities Act of 1990 to provide an environment that does not discriminate against persons with disabilities. If you are a person with a disability and anticipate needing any type of academic accommodation in order to participate in this class, please make appropriate arrangements with the Disability Services Coordinator, located in the Thomas P. Johnson Student Resource Center, (407) 646-2354. Evaluation Exams questions may come from reading assignments, course notes, lecture, assignments and provided solutions. For each exam, you will be permitted use of your course notebook for reference purposes. Exams or quizzes taken after the scheduled date will be penalized 10% for each class meeting the exam or quiz is taken late. Once an assignment solution is posted on Blackboard or discussed in class you may no longer submit your solution for a grade for any reason …so please don't ask. Assignments that are posted late will be penalized a minimum of 10%. You will submit most of your solutions for the Homework/Programming Problems to me using Blackboard‘s Digital DropBox. Each problem's description will include the specific details on how to submit your solution. A second method of submission is to email your solutions to me as an attachment to the message. Please do not embed your solution in the email message. A final, emergency method, for turning in Hamilton Holt School 5 Fall 2010 solutions is on a USB disk drive (I will return the disk to you once I have copied your solution on to my computer) or a CD. My computer does not have a zip or floppy drive. Please keep in mind that disks do occasionally go bad, servers can be down, networks can fail, and email can become lost or garbled in transmission. A submittal lost because of an avoidable faulty disk, server, or email problems may not be a valid excuse for turning in a solution late. Make it a habit to back up your work. As the last action you do before you turn off, or leave, your computer, save your work on your USB disk as well as in your directory on the 'R' drive of the campus network – especially if you are working in one of the campus computer labs. Always keep a copy (on some media you hang on to) of all your solutions. The Blackboard Digital Dropbox is a good way to track and manage your submissions. It saves all your work until you delete it. Attendance: Attendance will be taken each class beginning the 3 rd week. Excessive absences will impact your final grade. Any canceled classes will be made up in a manner deemed appropriate by the professor. Your final grade is influenced by your class participation and attendance. Miscellaneous: Read the material before coming to class. In general, class time will be used to summarize the material, answer questions that you may have from the reading, and present applications of the material. Ask questions! Take the initiative to seek help from your classmates and me. Use the Discussion Board liberally. Expect to expend 3-10 hours of effort outside class for each hour you spend in class. Truisms "The sole justification of teaching, of the school itself, is that the student comes out of it able to do something he could not do before. I say do and not know, because knowledge that doesn't lead to doing something new or doing something better is not knowledge at all." J. Barzun, Begin Here p. 112) "It is the learner who must engage the learning." James E. Zull, The Art of Changing the Brain p. 219 "Don't confuse effort with accomplishment" , Doc No whining… 'nuff said. Hamilton Holt School Fall 2010 6 Course Grading: I believe that having high expectations are an indication of my respect for you and for your capacity to work at a level of excellence you may not have thought possible. I will follow the grading standards outlined in the college catalogue: Grade A is reserved for work that is exceptional in quality and shows keen insight, understanding, and initiative. Grade B is given for work that is consistently superior (that is, not merely respectable or "average") and shows keen insight, understanding, or originality. Grade C is a respectable grade. It reflects consistently daily preparation and satisfactory completion of all required work. Grade D- is the lowest passing grade. It is below the average necessary to meet graduation requirements and ordinarily is not accepted for transfer to other institutions. Grade F is failing. Grade breakpoints: Item Mid-Term Exam Final Exam (Comprehensive) Quizzes Programming Assignments Overall total Value 150 250 50 250 700 Grade A AB+ B BC+ C CD+ D DF Breakpoints 93-100% 90-<93% 87-<90% 83-<87% 80-<83% 77-<80% 73-<77% 70-<73% 67-<70% 63-<67% 60-<63% <60% Note: o "90-<93%" is interpreted as "greater than or equal to 90% but less than 93%". The same interpretation is applied in a similar fashion to the other breakpoints o When a overall percentage is computed, no rounding will be applied. For example, 86.9% will be awarded a B. o Should the total points for Quizzes and Programming Assignments be more or less than the target shown above, grade breakpoint percentages will still be applied to the overall total. Hamilton Holt School 7 Fall 2010 Schedule for CMS270 Introduction to Object-Oriented Programming Tuesday 6:45pm-9:15pm in Bush 222 (Note: this is a target agenda that is subject to change during the term. Any changes will be announced in class and posted on Blackboard) Week 1 Date 8/24 2 8/31 3 4 5 6 7 9/7 9/14 9/21 9/28 10/5 8 9 10/12 10/19 10 11 10/26 11/2 12 13 14 15 16 11/9 11/16 11/23 11/30 12/7 Agenda Course overview Review Syllabus Relational database fundamentals Using VS to access a SQL database Fundamentals of SQL Select statement SQL select continued SQL insert, update, delete statements Chapter 13 – Intro to DB Programming Chapter 14 – How to work with data sources and datasets Chapter 15 – How to work with bound controls and parameterized queries Midterm Exam n-tier architecture Project requirements MyGeneration utility Chapter 16 – How to use ADO.NET to write your own data access code Data Applications Access Blocks Chapter 23 – How to use LINQ TBD TBD Final Exam