File:
[LON-CAPA] /
doc /
help /
LON-CAPA.developers.manual.lyx
Revision
1.1:
download - view:
text,
annotated -
select for diffs
Mon Jul 28 14:15:44 2003 UTC (21 years, 4 months ago) by
bowersj2
Branches:
MAIN
CVS tags:
version_2_9_X,
version_2_9_99_0,
version_2_9_1,
version_2_9_0,
version_2_8_X,
version_2_8_99_1,
version_2_8_99_0,
version_2_8_2,
version_2_8_1,
version_2_8_0,
version_2_7_X,
version_2_7_99_1,
version_2_7_99_0,
version_2_7_1,
version_2_7_0,
version_2_6_X,
version_2_6_99_1,
version_2_6_99_0,
version_2_6_3,
version_2_6_2,
version_2_6_1,
version_2_6_0,
version_2_5_X,
version_2_5_99_1,
version_2_5_99_0,
version_2_5_2,
version_2_5_1,
version_2_5_0,
version_2_4_X,
version_2_4_99_0,
version_2_4_2,
version_2_4_1,
version_2_4_0,
version_2_3_X,
version_2_3_99_0,
version_2_3_2,
version_2_3_1,
version_2_3_0,
version_2_2_X,
version_2_2_99_1,
version_2_2_99_0,
version_2_2_2,
version_2_2_1,
version_2_2_0,
version_2_1_X,
version_2_1_99_3,
version_2_1_99_2,
version_2_1_99_1,
version_2_1_99_0,
version_2_1_3,
version_2_1_2,
version_2_1_1,
version_2_1_0,
version_2_12_X,
version_2_11_X,
version_2_11_5_msu,
version_2_11_5,
version_2_11_4_uiuc,
version_2_11_4_msu,
version_2_11_4,
version_2_11_3_uiuc,
version_2_11_3_msu,
version_2_11_3,
version_2_11_2_uiuc,
version_2_11_2_msu,
version_2_11_2_educog,
version_2_11_2,
version_2_11_1,
version_2_11_0_RC3,
version_2_11_0_RC2,
version_2_11_0_RC1,
version_2_11_0,
version_2_10_X,
version_2_10_1,
version_2_10_0_RC2,
version_2_10_0_RC1,
version_2_10_0,
version_2_0_X,
version_2_0_99_1,
version_2_0_2,
version_2_0_1,
version_2_0_0,
version_1_99_3,
version_1_99_2,
version_1_99_1_tmcc,
version_1_99_1,
version_1_99_0_tmcc,
version_1_99_0,
version_1_3_X,
version_1_3_3,
version_1_3_2,
version_1_3_1,
version_1_3_0,
version_1_2_X,
version_1_2_99_1,
version_1_2_99_0,
version_1_2_1,
version_1_2_0,
version_1_1_X,
version_1_1_99_5,
version_1_1_99_4,
version_1_1_99_3,
version_1_1_99_2,
version_1_1_99_1,
version_1_1_99_0,
version_1_1_3,
version_1_1_2,
version_1_1_1,
version_1_1_0,
version_1_0_99_3,
version_1_0_99_2,
version_1_0_99_1,
version_1_0_99,
loncapaMITrelate_1,
language_hyphenation_merge,
language_hyphenation,
bz6209-base,
bz6209,
HEAD,
GCI_3,
GCI_2,
GCI_1,
BZ4492-merge,
BZ4492-feature_horizontal_radioresponse,
BZ4492-feature_Support_horizontal_radioresponse,
BZ4492-Support_horizontal_radioresponse
Using CVS as FTP... ;-P
Intending to work on this file on my home system; will be removed after
it serves its purpose. I'm using it to write stuff into the development
manual w/ a nice interface and will convert it to .tex later.
#LyX 1.3 created this file. For more info see http://www.lyx.org/
\lyxformat 221
\textclass article
\language english
\inputencoding auto
\fontscheme default
\graphics default
\paperfontsize default
\papersize Default
\paperpackage a4
\use_geometry 0
\use_amsmath 0
\use_natbib 0
\use_numerical_citations 0
\paperorientation portrait
\secnumdepth 3
\tocdepth 3
\paragraph_separation indent
\defskip medskip
\quotes_language english
\quotes_times 2
\papercolumns 1
\papersides 1
\paperpagestyle default
\layout Title
LON-CAPA Developer's Manual
\layout Author
(source material)
\layout Section
About This Document
\layout Standard
The purpose of this document is to introduce developers people to LON-CAPA,
and enable them to start doing real work with the system as quickly as
possible.
This should prove useful both to people who already intend to develop with
LON-CAPA, and to technical people who are evaluating LON-CAPA to see if
it suits their needs.
\layout Standard
The most daunting task facing new developers is understanding how the whole
system fits together; individual pieces are usually sensible but like any
large program it is difficult to understand the forest by looking at just
the trees.
Therefore, this document will start out with the highest-level overview
of the system, which can be safely skipped if you already know what LON-CAPA
is.
\layout Standard
Next, we'll look at the major subsystems of LON-CAPA and how they fit together
at a high level, with enough detail to understand the context a given piece
of the system functions in.
Appropriate pointers will be given to the detailed documentation on the
various subsystems, so this section can
\layout Standard
Then a brief tutorial in adding a
\begin_inset Quotes eld
\end_inset
handler
\begin_inset Quotes erd
\end_inset
to LON-CAPA will be given, enabling you both to understand how to add brand-new
functionality to LON-CAPA, and better understand the majority of the code
in the system which is in the form of handlers.
\layout Standard
Finally, the last and largest portion of this document will be extremely
detailed examinations of the subsystems from a technical point of view,
including API descriptions suitable for use in programming.
Obviously you will not need to read this over entirely, unless you really
want to know what the system can do.
\layout Section
What is LON-CAPA?
\layout Standard
The
\series bold
L
\series default
earning
\series bold
O
\series default
nline
\series bold
N
\series default
etwork with a
\series bold
C
\series default
omputer
\series bold
A
\series default
ssisted
\series bold
P
\series default
ersonalized
\series bold
A
\series default
pproach (LON-CAPA) is an integrated system for online learning and assessment.
It consists of a learning content authoring and management system allowing
new and existing content to be used flexibly, a course management system,
an individualized homework and automatic grading system, data collection
and data mining system, and a content delivery system that will provide
gateways to and from NSF's National STEM Digital Library.
\layout Standard
In particular:
\layout Itemize
The LON-CAPA software provides instructors with a common, scalable platform
to assist in all aspects of teaching a course, from lecture preparation
to administration of homework assignments and exams.
It allows instructors to create educational materials and to share such
learning resources with colleagues across institutions in a simple and
efficient manner.
\layout Itemize
It provides an extremely sophisticated assignment engine that can create
unique homework assignments and examinations for each student in a class.
Its formative and summative assessment tools grade a broad variety of objective
problems and assist in evaluation of essays.
\layout Itemize
It provides prompt feedback for students and instructors, as well as statistical
information on performance and on effectiveness of materials.
Discussion pages attached to every homework assignment encourage communication
among students and faculty.
\layout Standard
The LON-CAPA software is freely available and free (GNU General Public License),
and may be modified and adapted.
\layout Standard
LON-CAPA is being developed and implemented by an enthusiastic group of
faculty and professionals who recognize that Information Technology can
play an important role in improving students' learning and understanding.
Current members of the project include faculty from universities, colleges,
and K-12 schools in the US, Canada, Asia, Africa, and Europe.
The core development group is located at Michigan State University.
\layout Subsection
Why LON-CAPA?
\layout Standard
There are tens of learning management systems to choose from.
Why should you choose LON-CAPA over the competition?
\layout Itemize
\series bold
Unparalleled assessment engine
\series default
: The assessment engine in LON-CAPA is the beneficiary of over a decade
of development and refinement.
Few projects are even in the same league of the LON-CAPA project in experience
with sophisticated homework problems.
Sophisticated randomization features go well beyond merely randomizing
the order of multiple choice problems; everything can be randomized, from
the exact parameters in a given numerical problem to
\emph on
which
\emph default
parameters are missing for a given student.
See our Author's Manual for an idea of how powerful the assessment engine
is (http://msu.loncapa.org/adm/help/author.manual.pdf), or try our Demo Course
(http://demo.lon-capa.org/cgi-bin/signon.pl).
\layout Itemize
\series bold
Full course support
\series default
: LON-CAPA is capable of running your entire course from top to bottom.
LON-CAPA can host all of the content of the course, from syllabuses to
actual course materials.
It can track your students grades, with as much power as you need.
Want to give students bonuses for getting a problem right on the first
try? Or insert external grades into the system from an external data source?
Powerful communication features enable discussion between the instructors
and students, or among the students themselves.
From the initial course creation to the final grades readout, LON-CAPA
has all the power you need to run courses.
\layout Itemize
\series bold
It's free
\series default
: The thousands or millions you save over expensive course management solutions
can be better spent on computers, or directly spent on your students.
LON-CAPA can frequently do more with less then some of the largest commercial
competitors, too.
\layout Itemize
\series bold
It's free
\series default
: As in liberty.
No need to buy an extra-special license just to have the privilege of developin
g extensions to the system.
You have full access to the entire system.
You aren't restricted to carefully delimited parts of the system the vendor
deems
\begin_inset Quotes eld
\end_inset
safe
\begin_inset Quotes erd
\end_inset
for you to access.
You also have full access to all the data on the system; LON-CAPA never
locks up your data.
There aren't any hidden secrets in the system, either, when you're free
to scrutinize all of the source code.
And it won't become closed later either, thanks to the licensing.
\layout Itemize
\series bold
Large Digital Library
\series default
: LON-CAPA's digital library means you have access to thousands of high-quality
learning resources right off the bat, without writing them yourself.
\layout Itemize
\series bold
Power for the Users
\series default
: LON-CAPA's grants a lot of power to the instructors to control their course;
the system imposes minimal arbitrary restrictions on the instructors because
the design is mature.
To get an idea of what the instructors can do, see our Course Management
Manual (http://msu.loncapa.org/adm/help/course.manual.pdf).
\layout Itemize
\series bold
Improve Student's Performance
\series default
: Several studies have repeatedly shown that using LON-CAPA can significantly
improve student performance.
One especially interesting result has been its ability to nearly eliminate
the gender gap in technical subjects such as physics, where men have traditiona
lly outperformed women.
\layout Comment
I'd
\series bold
like
\series default
to say here that multiple choice systems have been demonstrated to do the
opposite; can we back that up? Links to actual papers would be great, on
both sides.
\layout Subsection
Features
\layout Standard
TBD
\layout Subsection
Philosophy and Pedagogy
\layout Standard
TBD
\layout Comment
I'd
\series bold
really
\series default
like to have a lot of what I've heard written down.
So much cool stuff has been said but I don't know where I can find it.
\layout Subsection
Conclusion
\layout Standard
We hope by now you're as excited as we are about the system.
LON-CAPA is really powerful and good for both students and instructors,
and you can't beat the bang-for-the-buck.
\layout Standard
Now you know what LON-CAPA is all about, let's start looking at the internals
to see how we do all this great stuff.
\layout Section
LON-CAPA Technical Overview
\layout Standard
In a nutshell, LON-CAPA is all about bringing learning
\series bold
resources
\series default
and
\series bold
people
\series default
together with
\series bold
technology
\series default
.
Thus, the best way to understand the system is to understand how it models
learning resources, how it understand people, and last (and really, least
importantly) what technology supports it.
\layout Subsection
Learning Resources And Assembly
\layout Standard
see Guts_Authoring.tex
\layout Subsection
Network
\layout Standard
sharing
\layout Standard
dynamic replication
\layout Standard
notification
\layout Standard
show replication sequence
\layout Subsection
Courses
\layout Standard
The end result of all of this assembly is an actual course that students
can participate in.
\layout Standard
Courses are themselves sequences that tell the system what the course consists
of.
Course instructors or administrators can manipulate this sequence through
the use of the Course Documents screen; see the Course Documents Screen
chapter in the Course Management Manual (http://msu.loncapa.org/adm/help/course.ma
nual.pdf) for more detailed information about that.
\layout Standard
\series bold
INSERT OVERVIEW/Initialization Of Course from lonuserstate.pm here; make
sure to mention lonnavmaps and the
\begin_inset Quotes eld
\end_inset
compiled course hash
\begin_inset Quotes erd
\end_inset
here.
\layout Subsection
Cascading Parameters
\layout Standard
Parameters cascade and can affect anything in the course.
Extensions should take advantage of parameters if it at all makes sense.
Makes common operations easy.
Very powerful;
\begin_inset Quotes eld
\end_inset
simple problem
\begin_inset Quotes erd
\end_inset
is actually implemented in terms of parameters.
\layout Standard
Most common parameters can usually be accessed through lonnavmaps, which
provides a relatively nice interface to resources and their parameters.
See navmaps.
\layout Subsection
Finding Resources
\layout Standard
search
\layout Standard
browse
\layout Subsection
Permissions
\layout Standard
sharing, restrictions, licenses (should put where this is done)
\layout Subsection
Affect On System (rename)
\layout Standard
Supporting highly dynamic, geographically distributed, configurable resources
drives much of the system.
Understanding this
\layout Standard
Practical effects on how you need to think about the system:
\layout Itemize
Don't assume resources are on the hard drive.
You need to ask the system to first replicate the resources as necessary.
\layout Itemize
Make sure you use the rich environment, don't try to fight it, or reinvent
the wheel.
See the discussion on the Environment in the Technology section.
\the_end
FreeBSD-CVSweb <freebsd-cvsweb@FreeBSD.org>