CSSE 120 – Introduction to Software Development
Syllabus
Catalog Description
CSSE 120 Introduction to Software Development 3R-3L-4C F,W,S
An introduction to procedural and object-oriented programming with an emphasis on problem solving.
Problems may include visualizing scientific or commercial data, interfacing with external hardware such as robots,
or solving numeric problems from a variety of engineering disciplines. Procedural programming concepts covered include
data types, variables, control structures, arrays, and data I/O. Object-oriented programming concepts covered
include object creation and use, object interaction, and the design of simple classes.
Software engineering concepts covered include testing, incremental development, understanding requirements, and teamwork.
Note: At one time, an introduction to C programming was
part of this course; that is no longer the case.
Learning Outcomes
Prerequisite
This course does not assume that you have any prior programming experience. But, like
many other Rose-Hulman courses, CSSE 120 requires that you keep up with each
day's work.
By the end of the first week, you will have a quite a bit of
programming experience, or you will be behind!
Instructors
Claude Anderson
Office: Moench F-210
Email: anderson AT rose-hulman.edu
Phone: 812-877-8331
When I am in my office, I am almost always available to you. Times when
you will never find me there, due to classes or meetings:
MRF periods 3-4, 7-10; T10.
I try to keep my Outlook Calendar up-to-date. You can view it to see
additional meetings that I may have in a given week.
David Mutchler
Office: Moench F-226
Email: mutchler AT rose-hulman.edu
Phone: 812-877-8426
When I am in my office, I am almost always available to you.
Times when you will never find me there, due to classes or meetings:
Monday, Tuesday, Friday: periods 1-4. Wednesdays, periods 5-6. Tuesdays 10th period.
Class Meeting times
- Section 01 (Mutchler): MRF 8:05AM-9:50AM, O269
- Section 02 (Mutchler): MRF 9:55AM-11:40AM, O269
- Section 03 (Anderson): MRF 1:35PM-3:20PM, O269
- Section 04 (Anderson): MRF 3:25PM-5:10PM, O269
Required Textbook
Attendance policy
You are expected to attend all classes, unless you have a valid excuse:
- Illness and some injuries are valid excuses. Don't come to class if you are ill. Instead:
- Consider visiting the Health Services office.
Their services are free. For your convenience, they provide a confidential email notification to your professors when you are seen there.
- If you do not visit the health services offices, or if your illness extends for more than a single missed class period,
send an email to your professor indicating that you are ill. Indicate when you hope to return to class.
- In any case, take care of yourself, but also use all available resources (student assistants, etc.) to catch up with missed work.
- Job and graduate/professional school interviews, attending scientific conferences, and participating in Institute-sponsored activities (e.g. sports teams)
are also usually valid excuses provided that:
- You make every attempt to avoid missing exams and group project time.
- You (or your coach or other faculty/staff person in charge of the trip) notifies the instructor in writing (email is OK),
normally at least ten days in advance of the event.
In all such cases, you are responsible for making up any missed work.
- For other exceptional circumstances that you believe are valid excuses,
it is often wise to consult with the Dean of Students.
We may require a confirming memo from the Dean of Students provided within one week of the circumstance.
If you miss two class meetings during the term (valid excuses or not), you should immediately meet with your instructor to determine
whether it is advisable for you to continue in the course.
We want to help you succeed in this course; falling behind is the most common reason for not doing well in this course.
How to succeed in CSSE120
- Before each class meeting: watch the videos, read the textbook, complete the
quiz.
- As you are doing the before-class activities, write down
questions so you can ask when you get to class.
- Attend every class meeting. Work actively on the
exercises. Talk to other students and your instructor.
- If you know in advance that you must miss a
class, you should attempt to do the in-class
exercises before the class meeting time.
- Continue working on each the in-class exercise until you
are confident about it (just “getting it to
work" is not enough).
- Immerse yourself in the end-of-term project. Be a world-class teammate.
- Prepare for each exam. If we give you practice problems, do them!
- Be honest. (See Academic Integrity below).
- Work efficiently — get help quickly when you get stuck or are confused.
Sources of help
- In class: Your instructor and in-class assistants, and other students.
- Students assistants are in:
- The Moench F-217 CSSE lab
- every Monday through Thursday
- from 7 p.m. to 9 p.m.
They are GREAT sources of help.
- All three CSSE labs – Moench F-217, F-225 and D-219 –
are GREAT places to work and open to you 24/7.
- Your student ID opens their electronic doorlocks.
- They have docking stations with very nice monitors and
- upper-class peers, most (all?) of whom are fun to hang with
and happy to answer your questions.
- Robots are in Moench D-219.
- If you have a robot question for a student assistant, just bring the robot from D-219
to F-217 (where the student assistants hang out).
- Piazza CSSE 120 web site (piazza.com/rose-hulman/fall2013/csse120).
This is the first place to ask and answer questions about any aspect of
the class. Try not to post "spoilers" for the exercises. We do
encourage you to answer other students' questions!
- Make an appointment to meet with your instructor,
or just stop by his office.
Assessment Plan (how you earn your grade)
To compute your grade in the course:
- Rule 1: To pass the course (and earn 15% of the credit for the course), you must:
- Complete (to the satisfaction of your instructor) EVERY assigned
exercise and EVERY quiz.
- You may redo any homework or quiz until it is satisfactory;
resubmission must be done by the second class meeting after the exercise is assigned.
- Attend almost all of the classes and do the in-class exercises.
- Do NOT come to class if you are sick.
Instead, email your instructor so that he can suggest how you can make up the
missed work most efficiently.
- If you have a good non-emergency reason to miss a class (e.g. your best friend's wedding),
alert your instructor in advance, and be prepared to make up the
work.
- If you have two unexcused absences, you MUST schedule a meeting with your instructor at that point to discuss whether you should continue the course.
- Rule 2: Assuming you succeed per Rule 1, first compute your score in each of the following categories:
| Category | Weight in overall average |
| Satisfy Rule 1 (all or nothing) |
15% |
| Exams (including the final exam) |
60% |
| End-of-term team project |
25% |
Since there are three categories, that gives you three scores.
Compute both W, the weighted average of those three scores, and S, the smallest of those three scores.
Your course numeric score is then the smaller of W and (S + 10). Convert this to a letter grade on the scale:
| A | 92 and up |
| B+ | 87 to 92 |
| B | 82 to 87 |
| C+ | 77 to 82 |
| C | 72 to 77 |
| D | 62 to 72 |
| F | below 62 |
For example, suppose that you earn 100% for Rule 1, 95% on your end-of-term project,
but only a 65% average on your exams. Then W is 100*0.15 + 95*0.25 + 65*0.6 =
77.75 (C+), but S is 65 so your course grade is 65 + 10 = 75, which is a C.
This is an unusual assessment plan,
but it is designed to help you succeed on all the key aspects of this course.
Note this description of the B and B+ grades from the Rose-Hulman Rules and Procedures:
Thorough competence to do excellent work in the field is required for the grades of "B" and "B+" which will not be given for mere compliance with the minimum essential standards of the course.
Evening Exams
The three exams during the year will be in the evenings, for two reasons.
We can make a quality exam that we can give to all sections at once.
And if the programming part of the exam turns out need more time than we anticipate, we have the flexibility
to allow you some additional time.
- Exam 1: Wednesday (yes, Wednesday!), Sept 25, 7-9 PM, Section 01(O157), 02(O159), 03(O167), 04(O169)
- Exam 2: To be determined
- Exam 3: To be determined
- Final : To be scheduled by the registrar
Can I turn assignments in late?
This course uses the flipped (inverted) classroom structure:
- Prior to each class session,
you will watch some videos, do some reading in the textbook, and take a short quiz to gain a basic understanding of the material for the session.
- During the class session,
you will do exercises (with one-on-one help as needed) to gain a deep
understanding of the material for the session.
The exercises that you begin at one session should normally be completed before the following session.
- For example, the exercises that you begin at session 4 should normally be completed before Session 5.
- If you keep up with your work, you will often finish the in-class exercises during the session.
But:
- It is perfectly OK to bring questions about the exercise to the following session,
and to finish up the exercise at that following session.
- For example, bringing questions about the Session 4 exercise to Session 5,
and finishing the Session 4 exercises in the first part of Session 5,
is fine.
- There is no penalty for turning in an assignment at any time
until the end of the second class session after the assignment was
given.
- For example, Session 3 is on Monday (so that it should normally be completed before Thursday's
class),
there is no penalty for turning it in as late as the end of Friday's
class.
But avoid the trap of routinely getting behind on the exercises!
If your submission of an exercise is not satisfactory,
you have until the end of the next class meeting after you are told it
is not satisfactory to
make the necessary corrections and resubmit.
If you fail to complete an assignment per the above,
you must meet with the instructor immediately to discuss whether you should continue the course.
Don't abuse this policy. If you fall behind, it is very hard to catch up.
Academic Integrity
Read the Institute policy on academic misconduct:
“Rose-Hulman expects its students to be responsible adults and to behave at all times with honor and integrity.”
- For exercises and quizzes: Getting help and working with others is encouraged for these assignments. Just follow these three rules:
- Attempt the problem yourself first (or with your partner in a pair exercise).
It is NEVER right to begin by copying someone else's solution.
- Make a sincere effort to understand the concepts behind the problem on which you are getting help.
- Give due attribution for help on your programs by including
in a comment, directly above whatever you are working on,
an indication of what you got help on, from whom.
- For your major project:
This will involve some division of labor, but only in ways that enhance your learning.
We'll explain the special rules for this project when we assign it.
- For exams:
These are to be done INDIVIDUALLY, with NO COMMUNICATION with anyone other than your instructor and his delegates.
The typical penalty for violating the last item is an F in the course and possible suspension from the Institute.
We understand the pressures that students face. You'll find that we are extremely flexible in helping you out of a jam,
but cheating hurts you in the long run, and penalties are stiff even in the short run.
If you are tempted to cheat, don't; come talk to us instead.
Accommodation for Disabilities
We understand that “invisible” disabilities (learning and attention deficit disorders,
chronic fatigue syndrome, clinical depression, etc.) can significantly affect a student’s academic performance.
We strongly encourage students to document special academic circumstances with the staff at
the Office of Student Affairs, and then to contact us as soon as possible so that we can work
together to provide recommended academic accommodations while protecting your privacy.
It is the student’s responsibility to request any approved, documented academic accommodations
(such as extra time) at least one week in advance of exams.
Course policies may change
The instructor(s) reserve the right to modify any aspect of this document as the term progresses. If changes are made, students will be notified via email or on the Piazza course pages