CS211 Syllabus

Course Director:

Lt Col Dean Bushey
 

Instructors: Lt Col David Wells, Dr. Rich Sincovec
Course Text: (Optional) MATLAB Programming for Engineers, 4th Edition, by Stephen J. Chapman, Thomson Engineering, ISBN 0-495-24449-X (The 3rd edition is also acceptable.)

 

Course Prerequisites: CS110 (a basic understanding of computers)

 

Course Schedule:

See Course Calendar and Lesson Schedule

Course Goals: The goal of CS211 is for cadets to develop understanding of the fundamental techniques of software development as a foundation for solving science and engineering problems using computers. Cadets will be able to use programming constructs, problem-solving strategies, algorithms, and data structures, with a focus on science and engineering applications. Cadets will focus on developing effective software engineering practices, emphasizing design, decomposition, encapsulation, modularity, testing, debugging, and software reuse.  Cadets will learn a programming language and development environment that is widely used within the science and engineering disciplines. Cadets will learn numerical methods programming.

The objectives of CS211 are for students to learn to:

  1. Design and implement computer programs to solve small-scale scientific and engineering problems.
  2. Use well-established programming practices such as modular decomposition, descriptive identifier naming, and appropriate commenting to create maintainable programs.
  3. Test and debug programs effectively and efficiently.
  4. Locate, understand, and use a wide range of pre-defined functions.
  5. Select and use appropriate scalar and aggregate data types.
  6. Select and use appropriate control structures.
  7. Select and use appropriate input/output operations for terminal, file, graphical, and GUI-based input/output.
  8. Understand basic numerical method techniques for solving non-linear equations.
Final Grade Distributions: A typical grade distribution is expected (but not guaranteed!)

A >= 90%

B >= 80%

C >= 70%

D >= 60%

F below 60%

 

Graded Events:
Event Points

Points

Before PROG

Programming Exercise 1 (PEX 1)

Programming Exercise 2 (PEX 2)

Programming Exercise 3 (PEX 3)

100

100

100

100

100

Graded Review 1 (GR 1)

Graded Review 2 (GR 2)

125

125

125

Final Project Design

Final Project Implementation (Interim & Final)

50

150

 

Final Exam

250

 

Total Semester Points 1000 325

 

DF Policies:

Academics with Honor

Classroom Standards

Policy on Academic Integrity

 

Course Policies:

Lab Exercises

  • CS211 lab exercises are not graded.  Therefore, the help and documentation policies do not apply to lab exercises.
  • If you do not complete all of a lab exercise, submit the work you have completed.
  • You may get help from other cadets during the lab period but you may not submit another cadet's code as part of your lab work.
  • Your instructor may allow you to leave the lab period early if you have totally completed and submitted the lab exercise assigned for that period.
  • Your instructor may excuse you from a lab period if you have completed and submitted the assigned lab exercise prior to class.
  • You will be allowed to use all of your submitted lab code for reference on graded reviews and the final exam.
  • If you submit your lab assignment work to the course web site, and your work was a reasonable attempt at completing the lab assignment, then you will be emailed a solution to the lab approximately 24 hours after the class work was done.

Programming Exercises (PEX's)

  • Programming exercises are graded events and thus the help and documentation policies apply (see details below).
  • Programming exercise files must be submitted electronically, uploaded to the course web site, prior to the beginning of class on the lesson they are due for full credit.
  • You must submit a hardcopy printout of your programming exercise files at the beginning of class on the lesson they are due.
  • Late penalties accrue on programming exercises at a rate of 25% for each 24-hour period (including weekends) past the on-time turn-in date and time.  The late penalty is a cap on the maximum grade that may be awarded for the late work.  Thus zero points will be awarded for a programming exercise submitted 72 hours or more late.
  • In exceptional situations, your instructor may allow you to submit a programming exercise late for full credit.  Any requests for late submission must be made at last 2 days prior to the on-time submission time.

Graded Reviews (GR's) and the Final Exam

  • Both graded reviews and the final exam will be a series of programming problems that you will solve on your laptop in the exam room.
  • You will have 90 minutes to complete each GR and 3 hours and 50 minutes to complete the final exam.
  • Your instructor will provide you with practice GRs so you know what to expect.
  • The final exam will have the same format as the GRs but will have more problems.
  • It is DFCS policy that anyone who scores below a 50% on the final will fail the course.

Course Project

  • The course project will be an open-ended programming project that should incorporate all of the programming skills you have learned in CS211.  The project will require you to develop a Graphical User Interface and work with data files.
  • The project will include a design (no code) turn-in and an implementation (code) turn-in.
  • You will be offered a default problem on which to work for the course project.  You may request an alternative project that best suits your interests.  In general, only students doing well in the class who present a compelling case for an alternative project will be allowed to work on a course project different from the default problem.

Laptops In Class

  • You must bring your laptop with charged batteries (or a power cord) and wireless capability to every CS211 lesson and lab period.
  • You may not use your laptop for non class-related work or play during class.
  • During the CS211 double periods, you should not use your laptop for anything unrelated to CS211 unless you have completed the lab for the lesson or have your instructor's permission to do so.
Default Final Exam Validation and Minimum Passing Score Policy
  • The top 5% (floor(N/20)) of cadets in the course are exempt from the final exam.  This ranking includes bonus and early turn-in points.
  • For courses with fewer than 20 students, the department head may approve one final exemption at the recommendation of the course director.
  • A minimum score of 50% on the final is required to pass the course.
     
Help Policies:

DFCS Help Policy for Graded Work (applies to CS211 Programming Exercises (PEX's) and the Final Project)

 

AUTHORIZED RESOURCES: 

      Any, except another cadet’s program.

NOTES: 

  • Never copy another person’s work and submit it as your own.

  • You must document all help received from sources other than your instructor.

  • DFCS will recommend a grade of F for any cadet who egregiously violates this Help Policy or contributes to a violation by others.

Requirements For Documentation of Graded Work (applies to CS211 Programming Exercises and the Project)

  • You must document all help received from any source other than your instructor.

  • The documentation statement must explicitly describe WHAT assistance was provided, WHERE on the assignment the assistance was provided, and WHO provided the assistance.

  • If no help was received on this assignment, the documentation statement must state “NONE.”

  • Vague documentation statements must be corrected before the assignment will be graded, and will result in a 5% deduction on the assignment.