Syllabus: IST 163

Programming Practicum w/C++, (Internet-Based Delivery)
Department of Integrated Science and Technology | College of Science
Summer I 2016

Instructor

Brian M. Morgan

Office

Morrow 114

Office Number

(304) 696-6469

Text Questions to

(304) 634-6736

Office Hours

You can email me at anytime to set up an appointment. Should you ever find yourself on campus during the semester, you can also look me up in person.

E-Mail

brian.morgan@marshall.edu

This course begins on May 16, 2016 and ends on August 5, 2016.

Please note that all times are Eastern.


Please see the University Academic Calendar for course withdrawal dates.

Course Materials and Cost

The required textbook is the same one that will be used in the traditional, classroom-based IST163 course. The book is available in the Marshall University Bookstore on the Huntington campus, or can be ordered online at http://www.marshall.bkstr.com/. You will not only need the book, but also Microsoft Visual Studio Professional 2012 (or above) or another C++ compiler. Visual Studio is available for free to students in this course (see http://www.marshall.edu/isat/software/ for specifics).

The information on the required text book is below:

C++ Programming: From Problem Analysis to Program Design, 7th edition, by D.S. Malik; Course Technology; ISBN: 9781285852744, 2015.  E-Book Available from CengageBrain.com

The textbook can be obtained from the Marshall University bookstore.  The approximate cost of the book is $224.75 (new) or $168.75 (used) or $78.66 (rented).

Technical Requirements

Course Details

Course Description:
Concepts of software development and maintenance using C++, including syntax of the language, loops, functions, decision structures, and file processing. Proper program design using object-oriented programming techniques are emphasized.

 

Credit:
The course is three (3) credit hours. It includes online lecture notes, exams, and programming projects. Students will participate in programming projects that illustrate the implementation of concepts in general science applications to learn C++. 

Pre/co-requisites:
This course has no academic prerequisites. It is available to all students including those who are seeking a college degree, auditing students, and to anyone who is interested in advancing his/her computer skills and competency.

Desired Objectives/Outcomes:
By the end of this course, you should be able to:

Course Student Learning Outcomes

How Practiced in this Course

How Assessed in this Course

Discuss Object-Oriented programming concepts

In-class examples, discussions, Chapter 10 examples

Project 9

Demonstrate basic console programming skills using C++

In-class examples, discussions, Chapters 2 through 10 examples

Projects 1 through 9
Final Exam

Develop software applications using Microsoft Visual Studio

In-class examples, discussions, Chapters 2 through 10 examples

Projects 1 through 9
Final Exam

Demonstrate planning techniques for developing software applications

In-class examples, discussions, Chapters 1 through 10 examples

Projects 8 through 9
Final Exam

Work through programming logic

In-class examples, discussions, Chapters 2 through 10 examples

Projects 1 through 9
Exams 1 and 2
Final Exam

Students will identify requirements for and analyze a problem, implement a solution for that problem, and verify their solution, using computer and information technology.

In-class examples, discussions, Chapters 2 through 10 examples

Final Exam


Course Grading

Instruction method:
Students should read the lecture notes that are contained within Blackboard and read the corresponding chapters from their textbook before tackling programming projects for each chapter. Programming Projects and Exams covering major topics are part of the course. Students may work on their assignments/projects from home with an Internet connection or if you are on campus, in any of the publicly accessible computer labs.

Evaluation method:
Evaluation of student's performance will be based on the quality of your performance on programming projects and exams.  

Grading Policy:
Final grades are based on performance on projects and a final exam as indicated below.

2 in-class Exams (equally weighted)

300 points

Final Exam

200 points

9 Programming Projects (equally weighted)

500 points

Assessment of Projects:

The grading of all laboratory programming projects will take into account the following:

1.   Although the most important attribute of a program is correctness, grading will take into consideration such items as time and coding efficiency, documentation, etc.

2.   Programs must have proper inline documentation and must be properly indented. 20% will be deducted for poorly documented and/or poorly indented code.

3.   All submitted code must compile correctly to receive at least partial credit. Code that does not compile will receive 0 credit, NO EXCEPTIONS.  This means you must debug your code before submitting.

4.   When a problem does not specify a required complexity, the grading will differentiate between efficient and non-efficient code.  For example, if you write a program that contains a number of checks that are redundant and/or has one or more loops that iterate zero or one time, up to 10% of the grade will be deducted.

5.   When a method name and/or parameters are specified in an assignment’s description, you must use that name and/or parameters.

6.   When you write a function, remember that the function should work for all possible inputs. Not on just your test inputs.

7.   Although interactions with other students are encouraged, you must compose your own answers, unless otherwise noted. 

Individuals who utilize other people’s code, thoughts, or ideas must provide appropriate references to said resources, including any and all web resources.  Failure to provide such documentation will result in a failing grade for the assignment, and may result in a failing grade for the course.

Final letter grades are determined based on the following grading scale:

90-100%

A

80-89%

B

70-79%

C

60-69%

D

Below 60

F

The instructor reserves the right to change these values depending on the overall class performance and/or extenuating circumstances.

Exams and Quizzes

There are THREE exams worth 50% of your overall grade. The first comes after Chapter 5’s content, the second after Chapter 10, and a comprehensive Final exam. The exams can be taken at any time once you have completed the reading and projects associated with the chapters listed herein, but all exams must be completed before the end of the day on August 5, 2016. The exams are taken within Blackboard through the Assessment tool, whose link can be found under the Course Content module. A schedule of when you should take each exam is found under the Schedule link on the course's homepage. A proctor will not be required for any of the exams, nor will any other special arrangements be required other than access to a computer with Internet access for a minimum of 1 hour for each exam (and up to 3 days for the final exam). Exams are, however, closed book.

Projects

The course includes a number of programming projects. All projects should be completed by the suggested due date that is listed within the course schedule link on the course’s homepage here in Blackboard . By doing so, you will ensure that you will complete the course on time without having to be rushed at the end of the semester. All projects must be submitted through the Blackboard Assignment Tool, and the description of each project/assignment is currently found within Blackboard's Assignment Tool, linked to the course homepage. As with the exams, all projects must be completed and submitted by the end of the day on August 5, 2016.

Discussions

The Discussions tool within Blackboard will be used to make any general announcements, last minute changes, etc. It is mandatory that you monitor your Blackboard course messages at least once a day. You as a student can also use the discussions tool to post any questions/comments that you have about the course content, projects, specifics of what is to be done, etc.

On-Campus Requirements

Because this is an online course, there is absolutely no requirement that you come to campus. You can communicate with me via the Blackboard Discussion board or via email.

Course Policies

My Academic Honesty Policy

Academic Dishonesty is defined as any act of a dishonorable nature which gives the student engaged in it an unfair advantage over others engaged in the same or similar course of study and which, if known to the classroom instructor in such course of study, would be prohibited. Academic Dishonesty will not be tolerated as these actions are fundamentally opposed to "assuring the integrity of the curriculum through the maintenance of rigorous standards and high expectations for student learning and performance" as described in Marshall University's Statement of Philosophy.

If you are found cheating on projects or plagiarizing answers from the Internet or other sources (among other things), there will be no second chance. Your penalty is that you will receive a failing grade for the course. In those cases in which the offense is particularly flagrant or where there are other aggravating circumstances, additional, non-academic, sanctions may be pursued through the Office of Judicial Affairs. Notice of an act of academic dishonesty will be reported to the Department Chair, Dean of the College of Science, and to the Office of Academic Affairs. Please refer to the Marshall University Undergraduate Catalog for a full definition of academic dishonesty.

Make-up Exams and Late Penalty: No make-up exams will be given after August 5, 2016, except under unusual circumstances and satisfactory written justification. Any student who fails to complete the exams and projects by this date due to an unexcused reason will receive a grade of zero for that assessment with no opportunity for make-up or substitution. The decision whether to give a make-up exam rests with the instructor.

Withdrawal Policy: The University withdrawal policy is followed in this course.

Topics and Methodologies / Schedule

A detailed schedule of topics covered in this course can be found under the schedule link on the course homepage in Blackboard. Please refer to this schedule as it contains the suggested dates for which you should read over the notes, complete the course projects, and the final exam. Also, please note this is a highly suggested timeline to follow, but is not mandatory. The only mandatory date is the course completion date of August 5, 2016. All assignments and exams MUST be completed by this date

For each topic discussed in the notes, specific experience of other students and the instructor will be posted to the discussions forum to enhance the characteristics involved.

Effort Required:
Even as a 100-level course, a considerable amount of development and research effort is required of the student. Students are expected to put in an effort of at least 10 hours per week studying, trying examples, and programming. Upon background and preparedness, some students may have to put in additional effort. Please do not procrastinate. Procrastination and the placing of blame on other factors than yourself has become very large problems for college students. Prioritize, schedule, and take responsibility for your actions and you should do very well in this class.

Resources

Me: Do not hesitate to contact me directly with questions or concerns. You can reach me via E-mail or if necessary by phone at (304) 696-6469. Please don't let your questions hang out there and simmer. If you are not sure about something the best thing to do is to ask about it right away! Something that may seem obvious to me may not be obvious to you at all! I answer e-mails every evening before going to bed, so if you do not hear from me within 24 hours of sending your message, it may not have reached me.

About Me - Biography

BRIAN M. MORGAN, BS, MS

Associate Professor, Integrated Science and Technology
Marshall
University

Brian Morgan is a resident of Proctorville, OH and holds a Bachelor of Science degree in Computer Science from Marshall University and a Master of Science Degree in Technology Management from the Marshall University Graduate College.

Professional Experience

Chair, Integrated Science and Technology Program, Marshall University, Huntington, WV . (May 2012-Current).

Associate Professor, Integrated Science and Technology Program, Marshall University, Huntington, WV. (May 2008-Current).

Assistant Professor, Integrated Science and Technology Program, Marshall University, Huntington, WV. (July 2000-May 2008).

Director, Center for Instructional Technology, Marshall University, Huntington, WV. (October 1997-June 2000). Responsible for everyday duties of the Center, as well as managing Instructional Technology and World Wide Web Development on both the Huntington and South Charleston campuses of Marshall University, and coordinating faculty and staff IT development training programs.

Part-Time Faculty, Marshall University Community and Technical College, Huntington, WV. (August 1997-Current). Have taught Computer Technology 107, 107E, and 108; Information Technology 107E, and have designed the electronic versions of Computer Technology 107E and Information Technology 107E.

Instructional Technologist, Marshall University, Huntington, WV. (November 1996-October 1997). Responsible for working with Information Technology staff and faculty from a variety of disciplines on the selection and production of CD-ROM-based and WWW-based multimedia instructional materials, assist faculty and staff, through training and consulting, in integrating computing and information resources into the curriculum, track current and emerging Internet and development technologies, and aid in the progression and completion of technology grants. I have created distributable Computer Based Training modules for both Distance Education and Faculty Training, as well as worked with several Internet course creation tools for placing classes "on-line."

Computer Programming, Marshall University College of Liberal Arts and College of Science, Huntington, WV. (April 1996-May 1997). Responsible for developing and programming multimedia tutorial programs for the University as well as programming multimedia modeling software for science laboratory courses.

Computer Programming and Research, NASA and National Science Foundation Grant through Marshall University, Huntington, WV. (Spring 1996-Fall 1996). Responsible for developing and programming lecture-room demonstration educational project programs through a NASA and NSF grant for Marshall University.


Marshall University