|
ONLINE
COMPUTER SCIENCE COURSES
|
|
The following is a concise description of the online
courses
offered by Dr. Horton H.
Tracy (Tony) in the Computer
Science
Dept at Frostburg State
University,
part of the University of Maryland System located at Frostburg, Maryland.
Each of these courses, is a regular on-campus course that is part of
the standard
curriculum of the University. None of these courses have been
offered
exclusively to online students, but each course has had at least one
student
who completed it without attending regular class sessions. One of my
courses,
COSC 120, was offered for the first time as a completely online course
in
the Spring of 2000 and has been available as such every semester since
then.
Although none of these courses was originally designed as a completely
online
course, each was developed, from its inception, for the independent
learner. This has been a fundamental feature of my courses for
over thirty
years. Therefore, my original course materials were easily
adapted
for study by a student outside the framework of the on-campus
course. With the transfer of all my course content to the Web in
1998, it has become possible for an independent learner to study these
courses at any time, over any time period, from any place in the
universe that has access to the
Web! (Of course, if you want to get "credit" for your
learning, you will have to register for the course and "jump through
the hoops" of formal
education to get a grade on a transcript!) On the other hand, even
the
on-campus student can benefit from the two powerful learning
facilities
of Web based courses, currency and interaction
.
"Currency" means the course content is (or can be) as up-to-date as
today's headlines ; "interaction" means the students can
interact with their learning material
as well as their teacher and other students. Web-based
learning
material facilitates personalized, nonlinear, interactive study;
e-mail,
chat, forums, and teleconferencing allows everyone in the course to
communicate
with each other (instantly or asynchronously) from remote
locations!
Since the Spring semester of 1999 I have been experimenting with
netcams
and audio chat, using Microsoft NetMeeting, iVisit, HearMe (now
defunct),
PalTalk, and various IM applications to make it possible for students
to
communicate via teleconferencing over the Internet. This is
"easier
said than done", but it has been possible for online students to
"attend"
my on-campus class presentations and my office hours via
cyberspace,
by coordinating this with me. We continue to experiment, so stay
tuned!
Each of my online courses consists of "clonable learning modules"
(hypertext
equivalents, with interactive learning tools, of textbook chapters,
which
can be cloned and
customized by
the student), "assessments" (learning tools that replace tests
in
normal courses), "evaluations" (equivalent to public
examinations),
lab exercises (hands-on exercises that parallel the content of
the
learning modules), and, in some cases, a semester project.
These
are best illustrated in COSC 120, Introduction to Cyberspace and
explained
in the overview of that course at
http://faculty.frostburg.edu/cosc/htracy/cosc120/MANAGEMENT/Overview120.htm.
Concise
descriptions of the courses currently available are as follows:
- COSC
100, Introduction
to Computer Science: This "computer literacy"
course is an introductory
survey of the historical, technological, and social aspects of
computing
with a practical component involving contemporary software
applications.
Topics include past and future computing, hardware, software, computer
systems,
data representation and processing, telecommunications, and social and
ethical
concerns of computing. Practical applications include word
processors,
spreadsheets, database managers, graphics packages, e-mail, and Web
browsing
software. No prerequisites; offered every semester. (The course contains eleven learning modules
and
ten lab exercises. The online learning material takes up 11.8
mega
bites (numerous graphics) of server storage.) It's URL is http://faculty.frostburg.edu/cosc/htracy/cosc100/.
- COSC 101,
Introduction
to Computer Science: (Last
offered in the Fall, 2003.) This, the first
course in the core computer science
curriculum, is a survey
of the discipline of computer
science covering history, hardware, development, number systems,
Boolean
logic, algorithm development, object oriented software development,
programming
languages, computability, artificial intelligence, introduction to
programming,
social implications, and ethics. In addition to providing a
survey of computer science fields, it is designed to provide the
prerequisite knowledge and skills (in particular, the Unified
Modelling Language and Java
software development language) for subsequent courses in the computer science curriculum,
especially COSC240. No prerequisites; offered every semester. (My version of this course was offered only
once; consequently it it the most incomplete of my online courses;
however, it does offer an example of the effort I put into developing a
course. As of 2003, the course contained thirteen online learning
modules, five large appendices,
and eight lab exercises; unfortunately it also has four unfinished
learning modules that I have never had the opportunity or incentive to
complete. The online learning material takes up 9.2
mega
bites (average number of graphics) of server storage.) It's URL is http://faculty.frostburg.edu/cosc/htracy/cosc101/.
- COSC 120,
Introduction
to Cyberspace (the most thoroughly developed for
the
Internet): A survey of Cyberspace, with particular emphasis
on the Internet, using Web Browsers. There is a significant
practical
component focusing on research of the Internet resources in the
student's
major discipline. There are numerous assignments for
generating
HTML documents using HTML editors (rather than writing HTML code).
Topics
include a survey of the content and facilities of the Internet and
World
Wide Web, other Internet services (FTP, Telnet, e-mail, newsgroups,
mailing
lists, chat, and teleconferencing), hardware and software for
communications
and networking, protocols (TCP/IP), File types and multimedia, Web
programming
languages, and the ethics of Cyberspace. Each student will complete a
project
that summarizes the Internet resources in his/her major discipline; the
project
will be published as a Web site and presented in class via
teleconferencing. (The course contains six learning
modules, ten or eleven lab exercises, and a semester project. The
online
learning material takes up 7.6 mega bites (numerous graphics) of server
storage.) It's URL is http://faculty.frostburg.edu/cosc/htracy/cosc120/.
- COSC 325, Software Engineering: This course
is the "capstone" of the core
software development courses in the FSU curriculem; every
student must attain a C in this course in order to complete the core
curriculum. The course is a
survery of current software engineering and management
techniques, with a focus on object-oriented
strategies, based on the Unified Modeling Language (UML). The central
theme is the application of engineering principles to software
development in a team environment. Modern
software engineering is emphasized, e.g. utilization of reusable
constructs (components, class libraries, frameworks, and patterns),
employment of an
integrated development environment (IDE), creation of graphical user
interfaces (GUI), and large scale project development.
Students
gain experience in team development by participating in a semester
long group project with an oral presentation at the end of the
course.
It's URL
is http://faculty.frostburg.edu/cosc/htracy/cosc325/.
- COSC 330, Web Design and Development: (Last
offered in the Spring, 2004.) A
practical study of the design and
development of Web sites. Course elements include: core
concepts
of HTML, principles of Web site design; hypermedia (graphics,
audio,
and video elements for Web pages) and interactive technologies (forms,
scripting,
DHTML, XML,etc). The student will learn how to incorporate
scripts
from the scripting languages JavaScript. The practical
component
is based on the development of an semester project that
demonstrates
the the student's Web development skills as well as the results of independent
research on an advanced Web development tecchnique or a Web
site for
a local business or organization; the project will be published
as
a Web site and presented in class via teleconferencing. (The course
contains
ten learning modules, at least ten lab exercises, and a semester
project.
The online learning material takes up 6.62 mega bites (numerous
graphics)
of server storage.) To enroll, prerequisite
experience
in basic Web page development, e.g. a passing grade in COSC 120, is
required. The course URL is http://faculty.frostburg.edu/cosc/htracy/cosc330/.
- COSC 390, Object Oriented Software
Development in a Distributed Environment Using Java:
(Last
offered in the Spring, 2006.) The course
focuses on object-oriented
software development in a distributed computing system using the
complete
Java development environment for hands-on experience. It was originally
designed to
build on the student's OOP capabilities developed in COSC 200 and COSC
201
using C++; ;however, after those courses switched to Java, COSC 390
evolved into a course that focuses on advanced subjects, especially object oriented modeling, graphical user
interfaces, and distributed computing (in particular Java
applets). Therefore, the
focus of the assignments
will be on developing applets and accessing them from GUIs on Web
pages.
Emphasis
will also be placed on those software development facilities not
covered
in other courses, e.g. object oriented modeling, exception
handling, concurrency, using class
libraries
(Java API), componentware (JavaBeans), and JavaScript. At the end
of
the course students will have a Web site that illustrates their
object oriented modeling (UML) and Java
development capabilities. (The
course
contains ten learning modules and seven programming exercises.
The
online learning material takes up 1.9 mega bites (few graphics) of
server
storage.) The course URL is http://faculty.frostburg.edu/cosc/htracy/cosc390/.
- COSC 450, Programming Language Structures:
(Last
offered in the Fall, 1998.)
Features of programming language paradigms and underlying concepts,
particularly those not covered in the core software
development courses of the FSU curriculum. Syntax and semantics;
control
structures, modularization/coupling, and abstraction as implemented in
structured programming, object oriented programming, and componentware
development styles. Imperative, declarative (applicative and
relational)
language paradigms. Programming exercises focus on object-oriented
software development tools (JavaBeans, Java, and JavaScript),
applicative languages (Logo and LISP), and a relational language
(PROLOG). (The course contains
ten learning modules and seven programming exercises. The online
learning
material takes up 2.2 mega bites (few graphics) of server
storage.) The course URL is http://faculty.frostburg.edu/cosc/htracy/cosc450/.
If you are interested in
the design of these course access Design Decisions at http://faculty.frostburg.edu/cosc/htracy/cosc120/design.htm.