(prepared by Dr. L. Lilien)
Department of
Computer Science
Instructor |
||
Name: Office: Office Hours: Lectures : Home page: Email: |
Dr. Leszek T. Lilien B-249, CEAS MW 10:30 am – 11 :45 am MW 6:00 pm – 7:15 pm, C-224 http://www.cs.wmich.edu/~llilien |
|
Course web page: Lecture slides,
etc.: |
http://www.cs.wmich.edu/~llilien/teaching/2011_spr/cs1120 http://www.cs.wmich.edu/~llilien/teaching/2011_spr/cs1120/_downloads |
|
Other Section Instructor(s) |
||
Name: Office: Office Hours: Lectures : Home page: Email: |
Dr. Ajay Gupta B-239, CEAS TR 2:20 pm – 3:15pm TR 1:00 pm – 2:15 pm, C-224 |
|
Name: Office: Office Hours: Lectures : Home page: Email: |
Dr. Li Yang B-248, CEAS TR 11:30 am – 12:45pm TR 10:00 am – 11:15 am,
C-224 |
|
Lab TAs Lab TAs: Mr. Nishant Gupta (nishant.gupta@wmich.edu)
CRN 12325, M
8:30-10:20 am, C-224, CEAS CRN 12322, R
2:30-4:20 pm, C-224, CEAS Mr. Jeremy Doornbos (jeremy.r.doornboos@wmich.edu)
CRN 14364, W
10:30 am-12:20 pm, C-224, CEAS CRN 12327, W
12:30 am-2:20 pm, C-224, CEAS Website: E-learning Office Hours: Mr. Nishant Gupta
(B-217, CEAS), M 10:30 am-12:30 pm and R 4:30-5:30 pm Mr. Jeremy Doornbos
(C-210, CEAS), T 2:30-4:30 pm and F 10:00 am - 12:00 pm |
||
C# Programming Tutor for CS3310/1120/1110 Mr. Chris Atkinson (C-208 CEAS), T R 8:30-11:30 am He might also be available at other times (to be determined) Other C-208 staff are also available to help students with programming problems (but some might not know C#).
Note: The
tutor or other C-208 staff will not know what the students' assignment
is, but can help with C#, debugging strategies, understanding what to do (if
they bring in their program specs), etc. |
||
** IMPORTANT *** Email guidelines for L. Lilien
Replies to messages that do not conform to the
following requirements might be delayed or missing (e.g., due to automatic
classification of the message as junk mail):
a) The message should be
sent from a WMU account - ending with “wmich.edu” (of course, this includes
accounts ending with “cs.wmich.edu”).
b) The message should have a descriptive
subject with the indicated prefix:
CS1120-F10--<your
last name>: <descriptive subject>
For example, the subject of a message sent by John
Smith should be as follows (no acute brackets in the actual subject):
CS1120-F10--Smith: sick and
absent
(Note that the actual subject does not include brackets; brackets are a
part of a formal specification only.)
c) If any files are attached, they should be scanned
with up-to-date anti-viral software, and the message including them should
contain the following statement (no acute brackets in the actual subject):
I have scanned the enclosed
file(s) with <name
of software and its
version>, which was
last updated on <date>
where <date> should be today’s date. (You should have
the habit of updating
your anti-viral software daily!)
This is the standard Computer Science II course using
the C# computer language. The emphasis is on designing and programming
object-oriented computer solutions to problems, as well as on the data
structures used for this purpose. An introduction to the analysis of algorithms
is made. Students must register for both a lecture section and a laboratory
section.
By
Courses: CS1110 – Computer Science I
or equivalent with a grade of C or better (prerequisite); Math1220 or Math 2000
(co-requisite)
By
Topic: Basic concepts of high-level language
programming – conditional structures; looping structures; arrays; program logic
– to solve problems; Basics of object oriented programming - be able to
create and use elementary objects; C# language for both procedural and
introductory object oriented programming; Basics of the software life cycle;
Validating quality of software produced; Introductory sorting and searching
algorithms; Algorithms for elementary problem solutions; Documenting programs
effectively and efficiently.
Be able to write well-structured, well-documented C#
programs that follow relevant phases of the
software life cycle.
Be able to use recursive solutions for problems
that are appropriate for the recursive strategy.
Be able to design, create and use class and object
hierarchies.
Be able to use polymorphism
(incl. abstract classes and methods).
Be able to design complex data structures—including
two-dimensional arrays, linked lists, stacks and queues.
Be able to use generics or collections to perform
operations on complex data structures.
Be able to program various searching (linear, binary)
and sorting (e.g., insertion, selection, bubble, merge, quick) algorithms, and
be able to analyze their efficiencies.
Be able to work in a pair or
team programming environment.
Be able to utilize version
control and document generation systems.
P. Deitel & H. Deitel, Visual C# 2010. How to Program. (4th Edition). Prentice Hall, 2010. ISBN-10: 0132151421. ISBN-13: 978-0132151429
http://www.deitel.com/Books/C/VisualCSharp2010HowtoProgram/tabid/3607/Default.aspx
Note: Your CS1100 textbook (J. Lewis, C#
2008 Software Solutions, ISBN: 0-321-26716-8) might be helpful
for some topics, so you might consider not selling it yet.)
During the term there will be two in-class midterm
exams and a final examination. Laboratory assignments will be given in the
regularly scheduled laboratory. Pop-quizzes may be given at anytime in
lab or lecture without prior notification. Your grade will be computed from
your performance on these components using the following weights:
Midterm
Exam
1
15%
(mass exam;
Friday, February 11, 4:00-6:00 pm, in C-224, C-227 and C-228)
Midterm
Exam
2
15%
(mass exam; Friday, March 25,
4:00-6:00 pm, in C-224, C-227 and C-228)
Final
Exam
20%
(mass exam; Friday, April 29, 8:00-10:00 am [in the morning!] in C-224, C-226 and C-227)
See: http://www.wmich.edu/registrar/finalexam201101.html)
Labs
40%
Lab
quizzes & pop
quizzes
10%
PMT
(Programming Skills Mastery Test –
more below) 0%
(PMT: During the last week
of classes in regular labs)
(Second-chance
PMT: Friday, April 22, 03:00-05:00pm, C-224)
The following basic
grading scale will be used:
A – 90; BA – 85; B – 80; CB – 75; C – 70; DC – 65; D –60.
(I may curve very tough exams to the students’ benefit
in order to improve the letter grades.)
If
you miss an exam (a Midterm Exam or the Final Exam), the decision as to whether
or not it is made up and how it is made up will be made on an individual basis.
To be excused there must be significant circumstances beyond the student’s
control. Generally this will require documentation, such as a doctor’s
note in the case of an illness. Normally, if your absence from an
exam is excused, you will have to take a make up
exam. Contact the instructor asking for a make up
exam as soon as it is possible (if possible inform the
instructor even before the exam that you will miss).
Students taking this course are required to register
for a lab section. Lab grades are based on student performance on
programming assignments and quizzes. Additionally, the Programming Skills
Mastery Test (PMT) is given in lab.
Lab assignments will be given on a regularly scheduled
basis. Many of these assignments will need to be worked on outside of the
regular scheduled labs.
Each assignment will have a due date/time. For
each day an assignment is late, 5% of the total possible points for the
assignment will be deducted. (If an assignment is more than 20 days late,
it is no longer worth any points.) Weekends and holidays are all counted
when calculating lateness. No assignments may be submitted after 11:59 PM
on the day preceding the last day of the classes (before the Final Exam Week).
By this time all work should be complete and submitted.
There will be regular quizzes given in the lab.
Additionally, pop-quizzes may be given at anytime in the labs or lectures
without prior notification. If you miss a quiz for any reason, you will
receive a 0 on it.
During the last lab session of the semester, students
will be given the Programming Skills Mastery Test (PMT). The test will
consist of a short programming problem. Students must program the
solution in an essentially complete and correct form in the allotted time.
This problem must be solved within the allotted time to earn a passing grade in
the course. Students that fail the PMT on their first attempt will be
given the second, and last, chance with a different problem.
Producing competent programmers is a primary goal of
this course, and therefore a minimum performance in lab is required for
students to pass the course.
You must pass the lab with at least 60% of the
total possible lab score in order to pass the course regardless of exam
scores.
In order to pass the laboratory, you may have at
most 2 assignments incomplete. Therefore, you should strive to
complete all assignments. Even if an assignment is turned in so late that
the credit is 0, it can still satisfy the completeness requirement.
You must pass the PMT to pass the course.
To
fully benefit from lectures and labs, you are expected to stay alert and pay
attention to the directions/announcements in the class. Cellphones,
PDAs, and other electronic devices should NOT be used during the lecture and
should be turned-off. If available, please do bring your laptop to the class. Email
checking or web-surfing of non-course related material is NOT permitted during
the class. You may surf the web only when specifically told to do so. In order
to maintain the integrity of the classroom and if I feel it is distracting you
or others, I may ask you to turn-off your laptop.
Please
note that the incomplete grade - I - is intended for the student who has
missed a relatively small portion of work due to circumstances beyond his/her
control. In general, performance on work done must be at a level of C or
better in order to qualify for an incomplete. An I grade will not
be given to replace an otherwise low or failing grade in the class.
The following statement has been approved and
distributed by the Western Michigan University Faculty Senate:
You
are responsible for making yourself aware of and understanding the policies and
procedures in the Undergraduate and Graduate Catalogs that pertain to Academic
Honesty. These policies include cheating, fabrication, falsification and
forgery, multiple submission, plagiarism, complicity and computer misuse. [The
policies can be found at http://catalog.wmich.edu
under Academic Policies, Student Rights and Responsibilities.] If there is
reason to believe you have been involved in academic dishonesty, you will be
referred to the Office of Student Conduct. You will be given the opportunity to
review the charge(s). If you believe you are not responsible, you will have the
opportunity for a hearing. You should consult with your instructor if you are
uncertain about an issue of academic honesty prior to the submission of an
assignment or test.
We also
encourage you to browse http://osc.wmich.edu
and www.wmich.edu/registrar
to access the Code of Honor and general academic policies on such issues as
diversity, religious observance, student disabilities, etc.
Unless otherwise told, you may not bring aids to
exams. Submission of another person’s work in part or whole is not
permitted. Learning can certainly occur with discussion of class material and
assignments with other students, and we will be doing considerable
collaborative activity, but at all times take care that you don’t represent the
work of another as your own.
If you are copying another’s work in part or whole,
either by hand or electronically, you are going too far.
If two or more people are working so closely together
that the outcomes, particularly on significant portions of computer programs,
are essentially line-by-line the same in logical structure, they are going too
far.
You should not give your completed work to someone
else or accept another’s completed work to “review or look at” in either
hardcopy or electronic form. This too easily facilitates copying.
Easy availability of information, material, source
codes, lecture notes etc on the Internet may make it possible to find solutions
to your assignments on the Internet or elsewhere. It is okay to refer to those,
understand them and use them to enhance your solutions, generate your own ideas
etc. However, you must give proper and full credit to original authors of the
work, if you include their ideas and/or solutions. Failing to do so is part of
academic and professional dishonesty. It will not be tolerated in this class.
Do not give in to temptations.
A student found responsible for violation of academic
honesty in the course, will receive a course penalty up to and including an E
grade for the class. (Note that the
Office of Student Conduct can impose additional penalties.)
|
Note: Calendars are subject to
change. Dates and events are added or changed as information becomes available.
Last updated on 1/19/11 (by L. Lilien)