Supplemental
materials can be found contained within the Blackboard Vista environment
(http://www.marshall.edu/muonline/).
I will be sending class announcements, updates, etc. using your
Blackboard Vista account. Access to a
WWW browser is required (Internet Explorer 7.0 or higher or FireFox 2.0
or higher) and Adobe Acrobat Reader (available for download free from
Marshall University's Computing Services download page at http://www.marshall.edu/computing/).

For this
course, it is recommended that you use Microsoft Visual Studio .NET 2008 to
compose your programming project answers. This package is available for
free to students taking this course through our Microsoft Agreement
(MSDNAA). All you have to do is visit the COS ITC center on the first
floor of the Science building (room S162) and sign an agreement to
obtain a copy of Microsoft Visual Studio 2008, the programming IDE we
will be using this semester. Please see http://www.marshall.edu/isat/msdn.asp
for access information.PLEASE ENSURE THIS SOFTWARE IS
INSTALLED BEFORE STARTING YOUR EXAMS/PROJECTS.

Course Details

Course
Description: Concepts of software development and
maintenance using C++, including syntax of the language, loops, functions,
pointers, 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 classroom lectures, 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:
None.

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

Discuss Object-Oriented
programming concepts

Demonstrate
basic console programming skills using C++

Develop software applications
using Microsoft Visual Studio .NET 2008

Demonstrate planning techniques
for developing software applications

Course Grading

Instruction method:
Students should read the lecture notes that are contained within Blackboard
and read the corresponding chapters from the textbook. 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)

30%

Final Exam

20%

10 Programming Projects
(equally weighted)

50%

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 nonefficient 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. Failure to provide such documentation
will result in a failing grade for the assignment, and may result in a
failing grade for the course.

In determining the overall grade for a project, you can
expect the following grades based on performance:
A – Excellent work that meets and/or exceeds all of the requirements for a
given project, code compiles and works for multiple test samples, all code
and associated files are well-documented, and the code is written
efficiently.
B – Good work that meets all of the requirements of the assignment, but may
have errors in documentation or coding, or contains code that may not work
with all possible data samples.
C – Average work that meets all of the requirements of the assignment, but is
missing one or more of the items in its entirety that is mentioned in terms
of an A grade.
D – Below average work which fails to meet one or more of the requirements of
the assignment.
F – Unacceptable work which fails to meet two or more requirements for an
assignment, or has code that will not compile and execute.

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 May 8, 2009. The exams
are taken within Blackboard through the
Assessments tool, whose link can be found on the course’s homepage. 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 2 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
Assignments Tool, linked to the course homepage. As with the exams, all projects must be completed and submitted by the
end of the day on May
8, 2009.

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 course Mail tool or the Who's
Online tool.

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 MarshallUniversity'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 May 8, 2009, 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.

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. Projects for the course will be
based on creating a fully-functional database solution for a sample
application.

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: Don't hesitate to
contact me directly with questions or concerns. You can reach me through the
Blackboard Mail Tool 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.

Support ServicesMarshall
University offers a variety of support services to students enrolled in
online courses:

Brian
Morgan is a resident of Proctorville, OH
and holds a Bachelor of Science degree in Computer Science from MarshallUniversity and a Master of Science
Degree in Technology Management from the MarshallUniversityGraduateCollege.

Director,
Center for Instructional Technology, MarshallUniversity, 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 TechnicalCollege, 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, MarshallUniversity,
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.