Course number: CIS 2206
Course title: Business Programming Concepts I
Credit/Contact hours: 3
Term: Fall, August 25 - December 5, 2008
Class meeting time and location: TuTh 8:30AM – 9:45AM in Elliott 206
College website: www.mansfield.edu
Course website: http://www.mansfield.edu/blackboard.htm
for syllabus, notes, assignments, and the class discussion board
Instructor name: John Phillips
Instructor office location: Elliott 205 C
Instructor office hours: online at http://faculty.mansfield.edu/jphillip/
Instructor office telephone: 570-662-4554
Instructor e-mail address: jphillip@mansfield.edu
This course provides an introduction to analyzing and designing solutions to business-related problems using a business programming language.
Prerequisite: CIS 1104
Murach’s Java SE 6, Joel Murach and Andrea Steelman, 2007, Murach Press, ISBN: 1-890774-42-1.
Sams Teach Yourself Perl in 21 Days (2nd Edition), Laura Lemay, 2002, Sams Publishing, ISBN: 0672320355. Note that the older first edition book will not work for this class.
Technical Writing in the Corporate World, H. Estrin and N. Eliot, 1990, Course Technology, ISBN: 1560520043.
Other Useful Reference Books
-- Java Books and Links
Java Application Development on Linux, 2005, C. Albing and M. Schwarz, Prentice Hall PTR, ISBN: 0-13-143697-X. This book is available for free online at: http://www.phptr.com/content/images/013143697X/downloads/013143697X_book.pdf
Blue Pelican Java, Version 3.0.5g, 2008, Charles Cook, self-published, available for free online at: http://www.bluepelicanjava.com/
Thinking in Java, 3rd ed., 2003, Bruce Eckel, Prentice Hall
PTR, ISBN: 0-13-100287-2.
This book is available for free online at: http://www.pythoncriticalmass.com/downloads/TIJ-3rd-edition4.0.zip
Thinking in Java, 4th ed., 2006, Bruce Eckel, Prentice Hall
PTR, ISBN: 0131872486.
The first 7 chapters are available for free online at: http://mindview.net/Books/TIJ4
The Java Tutorials – Learning the Java Language, Sun Microsystems, available online at http://java.sun.com/docs/books/tutorial/index.html
Online Java API - http://java.sun.com/reference/api/
-- Perl Books and Links
The Joy of Perl, 1998, Andrew Leonard, available online at http://archive.salon.com/21st/feature/1998/10/cov_13feature.html
Beginning Perl, 2000, Simon Cozens, Wrox Press, ISBN: 1861003145, freely available online at http://www.perl.org/books/beginning-perl/
Perl Best Practices, 2005, Damian Conway, O’Reilly Media, ISBN: 0-596-00173-8
O’Reilly Perl Book Series, http://oreilly.com/pub/topic/perl
Online Perl Documentation, 2008, http://perldoc.perl.org/perl.html
CPAN Perl Modules, http://www.cpan.org/modules/index.html
-- Other Useful Books and Links
Joel on Software, 2004, Joel Spolsky, Apress, ISBN: 1590593898, online essays located at http://www.joelonsoftware.com/Archive.html, on reserve at the MU library
Hackers & Painters, 2004, Paul Graham, O’Reilly, ISBN: 0596006624, online essays located at http://www.paulgraham.com/articles.html, on reserve at the MU library
The Mythical Man-Month: Essays on Software Engineering, 20th Anniversary Edition (Paperback), 1995, Frederick Brooks, Addison-Wesley Professional, ISBN: 0201835959, on reserve at the MU library
Online SQL Course, http://www.sqlcourse.com/ and http://www.sqlcourse2.com/
Online MySQL Reference Manual, http://dev.mysql.com/doc/
Access to the Internet is required either using your own computer or by using a computer in the school's computer lab. Presentation materials and other supplies may need to be purchased for your project. You should keep at least 2 separate backup copies of all work you do on a USB drive, diskettes, or other suitable media.
At the start of the course the student should already be able to:
At the end of the course the student will be able to:
These learning outcomes directly support the following CIS program objectives:
· enable the student to think critically and communicate clearly in order to conceptualize, design and implement computer solutions to real-world problems,
· provide the student with an appropriate set of professional skills to ensure a productive career.
For subjectively graded assignments such as program style and quality, essay questions, reports, or projects, work that meets the stated requirements will in general earn a C or C+ grade. Work that goes beyond the basic requirements will in general earn anywhere from a B- to a B+ grade. Work that is very good and exceeds the instructor's expectations will in general earn an A- or A grade. Only the most outstanding work will earn an A+ grade.
A >= 90%, B >= 80%, C >= 70%, D >= 60%, F < 60%
In addition, the instructor may choose to further differentiate grades with plus and minus subdivisions as outlined in the catalog and based on the student’s attendance, participation, assignments, and quizzes.
|
Course Item |
% of Grade |
|
Midterm Exam |
30 |
|
Individual Java project report and presentation |
30 |
|
Final Exam |
40 |
|
Attendance, participation, assignments, and quizzes |
+/- |
The individual Java programming project is a substantial part of the student grade. Therefore, a very high quality product will be required. Grading will be based on the program design and implementation, level of difficulty, written documentation and report, oral presentation, organization, and overall level of quality.
In general, the exams will be comprehensive, closed book, and timed. However, the instructor may elect to have a programming portion of an exam presented in a hands-on computer lab setting. Electronic devices such as laptop computers, calculators, music players, and cell phones may not be used during the exam.
Writing: Since this is a "W" course, writing will be a significant part of the course. Writing assignments will include:
· cover letter and resume
· project proposal memo
· formal technical report
· essay questions on the exams
A late project, report, presentation, or exam will automatically lose one letter grade for each week late unless it is an unavoidable officially excused and documented emergency absence. No work other than the final exam will be accepted after the last day of classes.
This course places an emphasis on out-of-class experimentation, research, and programming. You will need to go beyond the textbook and draw from the extensive resources available on the Internet and within the MU library. You will need to spend a large amount of time exploring the lecture topics in a hands-on environment, either on your own computer or in the computer lab.
Material will be presented in lecture format. You are expected to read the assigned material prior to the lecture. Feel free to ask questions on any material you need clarified during the lecture and during office hours.
This course requires previous programming experience in a language such as C++ or Java. We will cover the basics of Java programming very quickly. Considerable outside of class time will be required to complete the assignments and project!
Regular and punctual class attendance is expected. Documented excuses because of illness, serious mitigating circumstances, or official university representation will be accepted by all faculty members and will permit students to make up missed tests and/or graded assignments in a reasonable manner at a time agreeable to instructor and student. Students must provide documentation before absences can be excused.
On days that we have icy or snowy weather, the instructor may choose to hold class on-line. This will be announced online on Blackboard. Likewise, should the instructor be sick, please check Blackboard for assignments and/or alternative online class activities.
Feel free to help each other solve problems encountered on the assignments. Browse other students' posted work, on-line web sites, and other books for ideas. However, do be careful; if you copy another's work and you do not give credit for it that is plagiarism. In general, any computer files you submit should contain your own work and not someone else's. It would be especially bad to copy another student's work and then make a few changes to it and submit it as your own. Please do not do this. If you are in doubt then discuss the situation with your instructor.
The last day to withdraw from this course with a "W" grade is published in the Academic Calendar. It is the responsibility of the student to complete and submit the necessary forms to the Registrar's Office. An official withdrawal would entitle the student to a grade of "W" in the course.
The instructor reserves the right to make changes to this syllabus and course timeline as the course progresses.
|
Week |
Topics |
Reading Assignment |
|
1 |
ACM Code of Ethics |
Murach ch 2-4 |
|
2 |
SDLC |
Murach ch 5 |
|
3 |
Software testing using JUnit |
Murach ch 6 |
|
4 |
Software version control using Subversion (or CVS) |
Murach ch 7, 8 |
|
5 |
Software style and documentation using JavaDoc |
Murach ch 9, 10 |
|
6 |
Building and deploying Java applications using Ant |
Murach ch 11 |
|
7 |
Java dates, strings, exceptions, and files |
Murach ch 12, 13, 19 |
|
8 |
No Class on Tuesday (Fall Holiday) |
Sqlcourse.com |
|
9 |
Java JDBC |
Murach ch 21 |
|
10 |
Java project and technical writing topics |
Estrin pg 32-79 |
|
11 |
Perl – statements and data types |
Lemay ch 1-8 |
|
12 |
Perl – regular expressions |
Lemay ch 9-10 |
|
13 |
Perl – subroutines |
Lemay ch 11 |
|
14 |
Presentation techniques |
|
|
15 |
Project presentations |
|
|
16 |
Final Exam on Tuesday, 12/9/2008, 8:30AM |
|