agriesma@308
|
1 |
%nicht vergessen: auch urd.tex (wegen $Revision $) \"andern !
|
akremp@767
|
2 |
\part{User Requirements Document}
|
agriesma@308
|
3 |
|
nsimic@3711
|
4 |
This document describes the user requirements for the \sisac-system.
|
agriesma@308
|
5 |
|
wneuper@1693
|
6 |
By now the document captures at least those requirements in detail, which are a prerequisite for the {\em first phase of development, i.e. the development of the kernel of the math knowledgebase, of the indispensible tools for interaction on the knowledge, and of the tools for authoring the example collection.}
|
agriesma@308
|
7 |
|
nsimic@3711
|
8 |
The design will try to meet these requirements while accepting the structure of the \sisac-math-engine, which is defined by mathematical reasons, and offers new functionality (calculations are done stepwise, the learner can input a formula or a tactic and receive feedback from the engine, the math-engine usually 'knows' the next step).
|
agriesma@308
|
9 |
|
agriesma@308
|
10 |
%As new and different the functionality of the envisaged system is, as limited is the functionality w.r.t the expectiations a user can demand from (educational) math software at the state of the art. Thus from the beginning \sisac{} is seen as part of a collection of cooperating modules, and some requirements are stated here with the purpose, to provide for an architecture ready for combining \sisac{} with other components (administration, graphing etc.), and not with the purpose, to implement everything within \sisac{}.
|
agriesma@308
|
11 |
|
agriesma@308
|
12 |
The User Requirements Document is structured along the different kinds of users envisaged. The Software Requirements Document, on the other hand, will be structured along the modules implementing the functionality. In order to establish comfortable tracing, the $m:n$ relation between user requirements and software requirements will be accurrately recorded in a double-linked way.
|
agriesma@308
|
13 |
|
agriesma@308
|
14 |
Terms marked by \see{} are briefly described in appendix \ref{app.terms}.
|
wneuper@4689
|
15 |
\\
|
wneuper@4689
|
16 |
\vspace{4.0cm}
|
wneuper@4689
|
17 |
\\
|
wneuper@4689
|
18 |
Get this part from\\
|
wneuper@4689
|
19 |
\url{http://www.ist.tugraz.at/projects/isac/publ/urd.pdf}
|
agriesma@308
|
20 |
|
wneuper@1693
|
21 |
\chapter{Kinds of \isac{} users}\label{kinds-users}
|
wneuper@1693
|
22 |
There are several kinds of \sisac{} users which set the respective sections of requirements:
|
agriesma@308
|
23 |
%the following should be consistent with Terms.sml !!!
|
agriesma@308
|
24 |
\begin{description}
|
nsimic@3711
|
25 |
\item{\bf visitor (Besucher):} occasionally drops into an
|
nsimic@3711
|
26 |
\sisac-site and browses the respective math knowledge base and the
|
neuper@4108
|
27 |
example collection. May try to calculate some examples.
|
neuper@4108
|
28 |
Or some scientific content provider (wiki, scientific branding in an
|
neuper@4108
|
29 |
institution or an enterprise) includes occasional \sisac-services, in
|
neuper@4108
|
30 |
particular the possibility to interactively explore some specific
|
neuper@4108
|
31 |
calculations.
|
neuper@4108
|
32 |
|
neuper@4108
|
33 |
\item{\bf
|
nsimic@3711
|
34 |
learner (Lernender):} uses \sisac{} for learning and exercising,
|
nsimic@3711
|
35 |
i.e. primarily calculates examples in the example collection by
|
nsimic@3711
|
36 |
use of the math knowledge base. As a member of courses the learner
|
nsimic@3711
|
37 |
is called a student. \item{\bf math author (Mathematik-Autor):}
|
nsimic@3711
|
38 |
is an expert in computer mathematics who adapts and extends the
|
nsimic@3711
|
39 |
mathematics knowledge base. \item{\bf dialog author
|
nsimic@3711
|
40 |
(Dialog-Autor):} is an expert in learning theory who adapts and
|
neuper@4108
|
41 |
extends the dialog guide.
|
neuper@4108
|
42 |
|
neuper@4108
|
43 |
\item{\bf course
|
nsimic@3711
|
44 |
designer (Kurs-Designer):} adapts and extends the example
|
nsimic@3711
|
45 |
collection which can be solved by a given math knowledge base, and
|
nsimic@3711
|
46 |
adds explanations to items in the knowledge base. These tasks do
|
neuper@4108
|
47 |
not require special knowledge in computer mathematics.
|
neuper@4108
|
48 |
|
neuper@4108
|
49 |
\item{\bf course admin (Kurs-Administrator):} is a person
|
neuper@4108
|
50 |
administering the use of \sisac{} for learning within a group of
|
neuper@4108
|
51 |
learners. This person is also regarded as a legal representative of
|
neuper@4108
|
52 |
the institution consuming {\sisac} services.
|
neuper@4108
|
53 |
|
neuper@4108
|
54 |
\item{\bf administrator (Administrator):} this r\'ole combines the
|
neuper@4108
|
55 |
system administrator installing the software, and the person who
|
neuper@4108
|
56 |
implements the overall design of an \sisac-site (introductory pages
|
neuper@4108
|
57 |
etc.). This person is also regarded as a legal representative of the
|
neuper@4108
|
58 |
institution hosting {\sisac} services.
|
neuper@4108
|
59 |
|
agriesma@308
|
60 |
\end{description}
|
agriesma@308
|
61 |
%the above should be consistent with Terms.sml !!!
|
agriesma@308
|
62 |
These kinds of users are distinguished by the respective access-rights.
|
agriesma@308
|
63 |
|
neuper@4108
|
64 |
\begin{table}[h]
|
neuper@4108
|
65 |
\caption{Survey on the roles of {\sisac} users}\label{TODO}
|
neuper@4108
|
66 |
\begin{center}
|
neuper@4108
|
67 |
\begin{tabular}{l l l l l}
|
neuper@4108
|
68 |
task & math author & dialog author & course designer & course admin\\
|
neuper@4108
|
69 |
\hline
|
neuper@4108
|
70 |
determine & by theories & by impl. of & by impl. & by setting \\
|
neuper@4108
|
71 |
interaction & problems & dialog patterns & of examples, & content \\
|
neuper@4108
|
72 |
in an expl. & methods & & of explanations & delivery, \\
|
neuper@4108
|
73 |
& & & to knowl.items & assessments \\
|
neuper@4108
|
74 |
%in short: & calculate what& \dots how \dots & in context \dots& when \\
|
neuper@4108
|
75 |
\hline
|
neuper@4108
|
76 |
\end{tabular}
|
neuper@4108
|
77 |
\end{center}
|
neuper@4108
|
78 |
\end{table}
|
neuper@4108
|
79 |
|
akremp@767
|
80 |
\chapter{General requirements}
|
wneuper@1693
|
81 |
This section describes the requirements common to all users.
|
agriesma@308
|
82 |
|
wneuper@1693
|
83 |
%AKp5-6(1)--------------------vvv
|
wneuper@2334
|
84 |
\section{Users of \isac{}}\label{COMMON:USERS}
|
agriesma@308
|
85 |
|
wneuper@1693
|
86 |
{\bf\UR{\isac{} is a multi-user system.\label{COMMON:USERS:multi}}}
|
wneuper@1693
|
87 |
|
wneuper@1693
|
88 |
{\bf\UR{The users access \sisac{} via internet.}\label{COMMON:USERS:www}\\}
|
nsimic@3711
|
89 |
The computing resources needed to run such a complex application exceed the computing-resources presently available to the average user.
|
wneuper@1693
|
90 |
Moreover, organisation of centralised courses and curricula suggests separation of application and user-interface. An additional requirement is to keep expenses and effort for the average user at a minimum, in terms of computing power needed and installation effort. (Ideally, a standard web browser would suffice, but interaction required for the worksheet cannot be managed by a browser yet.)
|
wneuper@1693
|
91 |
|
wneuper@2365
|
92 |
{\bf\UR{\sisac{}'s data storage supports simultaneous access\label{COMMON:USERS:access}}\\}
|
nsimic@3711
|
93 |
Data storage has to support locking and versioning.
|
wneuper@1693
|
94 |
|
wneuper@1693
|
95 |
% TODO?
|
wneuper@1693
|
96 |
% UR no data on user's machine for mobility
|
wneuper@1693
|
97 |
|
wneuper@2365
|
98 |
{\bf\UR{Users access \sisac{} with different roles}\label{COMMON:USERS:roles}\\}
|
wneuper@2365
|
99 |
Several possible roles when accessing \sisac{} dictate different rights
|
wneuper@2365
|
100 |
and access to different modules of \sisac{} see p.\pageref{kinds-users}.
|
wneuper@1693
|
101 |
|
wneuper@1693
|
102 |
{\bf\UR{Learners can be grouped into courses.}\label{COMMON:USERS:groups}\\}
|
wneuper@2365
|
103 |
There are groups of learners in order to support the adminstration of courses. The membership w.r.t. these groups determines the selections of examples in the example collecton (see UR.\ref{profile-details}), the selection of explanations in the knowledge (see UR.\ref{author-explanation})) and the initial setting of the dialog as captured in UR.\ref{detail} and UR.\ref{stepwidth}.
|
wneuper@1693
|
104 |
|
wneuper@1693
|
105 |
{\bf\UR{One learner may be member in different groups}\label{COMMON:USERS:membership}\\}
|
wneuper@1693
|
106 |
One learner may be member in different groups but the settings for a session depend on exactly one group. This implies that multiple memberships have to be resolved at login time.
|
wneuper@1693
|
107 |
%AKp5-6(1)--------------------^^^
|
wneuper@1693
|
108 |
|
wneuper@1693
|
109 |
%AKp6-8(2+3)--------------------vvv
|
wneuper@2334
|
110 |
\section{Calculations and Data Involved}\label{COMMON:CALCDATA}
|
wneuper@1693
|
111 |
|
nsimic@3711
|
112 |
{\bf\UR{\sisac{}'s math engine is given as an already-implemented
|
nsimic@3711
|
113 |
module.}\label{COMMON:CALCDATA:mathengine}\\} \sisac s mathematics
|
nsimic@3711
|
114 |
engine(ME) is already given. Thus several requirements, looking
|
nsimic@3711
|
115 |
like software requirements, are listed here. A calculation (see
|
nsimic@3711
|
116 |
terms in the \sisac-project \cite{isac:appendices}) undergoes
|
nsimic@3711
|
117 |
three phases: the modelling phase, the specification phase and the
|
nsimic@3711
|
118 |
solving phase, where the latter may contain these phases
|
nsimic@3711
|
119 |
recursively (see the demonstration example in the usecases
|
nsimic@3711
|
120 |
document \cite{isac:use}).
|
agriesma@308
|
121 |
|
nsimic@3711
|
122 |
Calculations are created interactively in steps. A step is
|
nsimic@3711
|
123 |
initiated by the input of a learner: input of a tactic, of a
|
nsimic@3711
|
124 |
formula or of a 'go-on' command. A tactic is applied to a formula
|
nsimic@3711
|
125 |
and generates another (the derived) formula. The tactics specified
|
nsimic@3711
|
126 |
so far are listed in appendix \ref{appendix-tacs} An input formula
|
nsimic@3711
|
127 |
during modelling phase completes a model, and during the solving
|
nsimic@3711
|
128 |
phase an input formula is considered a derivation of the previous
|
nsimic@3711
|
129 |
formula.
|
wneuper@1693
|
130 |
|
wneuper@2365
|
131 |
{\bf\UR{\sisac{} stores 4 kinds of Mathematical Knowledge}\label{COMMON:CALCDATA:knowledge}}
|
wneuper@1693
|
132 |
\begin{description}
|
nsimic@3711
|
133 |
\item{Theories}
|
wneuper@1693
|
134 |
\item{Problems}
|
wneuper@1693
|
135 |
\item{Methods}
|
wneuper@1693
|
136 |
\item{Examples}
|
wneuper@1693
|
137 |
\end{description}
|
wneuper@1766
|
138 |
See \cite{wn:diss} for a detailed explanation.
|
wneuper@1693
|
139 |
%WN040506 ... dazu hat Mario schon kurze Beschreibungen
|
wneuper@1693
|
140 |
|
nsimic@3711
|
141 |
{\bf\UR{A Calculation undergoes 2
|
nsimic@3711
|
142 |
Phases}\label{COMMON:CALCDATA:phases}\\} A calculation undergoes
|
nsimic@3711
|
143 |
two phases: the Specification Phase and the Solving Phase, where
|
nsimic@3711
|
144 |
the latter may contain these phases recursively (see the
|
nsimic@3711
|
145 |
demonstration example in appendix \ref{use-expl}).
|
wneuper@2365
|
146 |
|
nsimic@3711
|
147 |
{\bf\UR{Specifying constructs a Model and a Specification.}\label{UR:WN-model-spec}\\}
|
wneuper@2365
|
148 |
See UR.\ref{UR:WN-mode-item-status} and UR.\ref{UR:WN-specification}.
|
wneuper@2365
|
149 |
|
nsimic@3711
|
150 |
{\bf\UR{A Model consists of fields and
|
nsimic@3711
|
151 |
items}\label{UR:WN-mode-item-status}\\} A Model consists of the
|
nsimic@3711
|
152 |
fields 'given' containing the input-items, 'where' containing the
|
nsimic@3711
|
153 |
pre-condition on the input-items, 'find' containing the
|
nsimic@3711
|
154 |
output-items and 'relate' containing parts of the post-condition.
|
wneuper@2365
|
155 |
|
wneuper@2365
|
156 |
{\bf\UR{A Specification consists of theory, Problem, Method}\label{UR:WN-specification}\\}
|
wneuper@2365
|
157 |
Theory, Problem and Method provide for 3 pointers into the knowledge base (see Fig.\ref{3D-math} on p.\pageref{3D-math}) referencing the knowledge required to solve the example specified by a model.
|
wneuper@2365
|
158 |
|
wneuper@2365
|
159 |
{\bf\UR{Solutions are calculated interactively in steps.}\label{COMMON:CALCDATA:stepwise}\\} Stepwise calculation is done in the Solving Phase. A step is initiated by the input of a learner: input of a tactic, of a formula or of a request that \sisac{} take over the calculation. A tactic is applied to a formula and generates another (the derived) formula.
|
wneuper@1693
|
160 |
|
wneuper@1693
|
161 |
{\bf\UR{In the Solving Phase, every formula is justified by a tactic.}\label{COMMON:CALCDATA:tactic}}
|
wneuper@1693
|
162 |
|
wneuper@2365
|
163 |
{\bf\UR{\sisac{} uses tactics as listed in appendix \ref{appendix-tacs}}\label{COMMON:CALCDATA:tactic-list}}
|
wneuper@1693
|
164 |
|
wneuper@1693
|
165 |
{\bf\UR{A calculation has a tree-like structure}\label{COMMON:CALCDATA:calc-tree}}
|
wneuper@1693
|
166 |
|
wneuper@2334
|
167 |
{\bf\UR{A Tactic may contain Error Schemes}\label{COMMON:CALCDATA:error-scheme}}
|
wneuper@4689
|
168 |
% Error scheme kann h�ngen an: example, method, theory (solving)
|
wneuper@4689
|
169 |
% Error scheme kann h�ngen an: example, problem, theory (specifying)
|
wneuper@2323
|
170 |
%WN040506 ... specific for courses (i.e. groups of students)
|
wneuper@2323
|
171 |
|
wneuper@2334
|
172 |
{\bf\UR{There are fill-in patterns for Tactics.}\label{COMMON:CALCDATA:FILL-IN:tactic}}
|
wneuper@2365
|
173 |
In addition to a Tactic being applied manually by the user or automatically by \sisac{}, a Tactic can be presented with parts left blank to be filled in by the user.
|
wneuper@2323
|
174 |
|
wneuper@2334
|
175 |
{\bf\UR{There are fill-in patterns for items of the Model.}\label{COMMON:CALCDATA:FILL-IN:model}}
|
wneuper@2323
|
176 |
|
wneuper@2365
|
177 |
{\bf\UR{\sisac{} guarantees correct results.}\label{COMMON:CALCDATA:correct}\\}
|
wneuper@2365
|
178 |
\sisac{}'s display of a Calculation reflects the state of the Math Engine. The Math Engine does not produce any inconsistent state of calculation.
|
nsimic@3711
|
179 |
Thus everything displayed by \sisac{} (apart from lines being edited by the user right now) is proven to be consistent with the Specification and the Knowledge Base.
|
wneuper@1693
|
180 |
User input will be accepted only if it can be proven to be correct by a check with the underlying Math Engine.
|
wneuper@1693
|
181 |
|
agriesma@308
|
182 |
{\bf\UR The the mode of the ME \label{me-mode}} is {\em one} of the following:
|
agriesma@308
|
183 |
\begin{tabbing}
|
agriesma@308
|
184 |
12345\=12345\=\kill
|
agriesma@308
|
185 |
\>step is applicable, result guaranteed\\
|
nsimic@3711
|
186 |
\>step is applicable, result is not guaranteed\\
|
agriesma@308
|
187 |
\>\>(because the learner has input some strange step previously)\\
|
agriesma@308
|
188 |
\>the ME is helpless, i.e. it cannot propose a next step\\
|
agriesma@308
|
189 |
\>the step is not applicable, plus an error message, why not applicable.
|
agriesma@308
|
190 |
\end{tabbing}
|
agriesma@308
|
191 |
|
wneuper@2323
|
192 |
{\bf\UR Consistent ``look \& feel'' for all users. \label{ur:look-feel}\\}
|
wneuper@2323
|
193 |
As long as the deductive part is left to Isabelle, the same is with the theory browser. \sisac{} will develop the ``look \& feel'' of its own, and thus violate uniformity w.r.t. the theory browser.
|
wneuper@2323
|
194 |
|
wneuper@2323
|
195 |
|
wneuper@2323
|
196 |
|
wneuper@2334
|
197 |
\section{Miscellaneous}\label{COMMON:MISC}
|
agriesma@308
|
198 |
|
wneuper@2365
|
199 |
{\bf\UR{\sisac{} supports internationalization.}\label{COMMON:MISC:i18n}\\}
|
wneuper@1693
|
200 |
The mother language should be used by the student. The language of math formulas is independent from other languages. Thus the names used in the knowledge base can simply be changed for each language (scriptures with different structure like Japanese will not be considered here). But there are other texts delivered by the system, like error messages, or the fields 'given,...' in a model; these should be implemented multilinqual.
|
wneuper@1693
|
201 |
|
wneuper@2365
|
202 |
{\bf\UR{\sisac{} supports cross-linking calculations and knowledge}\label{COMMON:MISC:xlink-know}\\}
|
wneuper@1693
|
203 |
Calculations may contain links into the Knowledge Base, e.g. to the definitions or proofs of tactics applied in the course of calculation or into underlying theories.
|
wneuper@1693
|
204 |
The Knowledge Base may contain links to examples illustrating theoretical concepts.
|
wneuper@2365
|
205 |
More specific requirements are in sect.\ref{kb-context-views}.
|
wneuper@1693
|
206 |
|
wneuper@2365
|
207 |
{\bf\UR{\sisac{} is open to data exchange with other tools.}\label{COMMON:MISC:xml}\\}
|
wneuper@2365
|
208 |
To facilitate interfacing with other tools, \sisac{}'s objects support being exported to and imported from open data formats. XML formats are preferred.
|
wneuper@4689
|
209 |
%WN040506 w�rde sagen: These formats will be XML-derivatives, priarily.
|
wneuper@1693
|
210 |
|
wneuper@1693
|
211 |
{\bf\UR{Several users can watch the progress of one calculation.}\label{COMMON:MISC:watch}\\}
|
wneuper@1693
|
212 |
Several users may watch the progress of a calculation, but there is exactly one user controlling the calculation and taking actions. This can be useful for instruction situations, especially teleteaching.
|
wneuper@1693
|
213 |
|
wneuper@2365
|
214 |
{\bf\UR{ A calculation can be edited with other tools}\label{COMMON:MISC:edit}\label{edit}}
|
wneuper@2365
|
215 |
Editing in \sisac{} is limited by UR.\ref{COMMON:CALCDATA:correct}. For publishing purposes, \sisac{}'s calculations can be exported for editing with standard publishing tools.
|
wneuper@2365
|
216 |
|
wneuper@2365
|
217 |
|
wneuper@2365
|
218 |
\subparagraph{Guarantee of correct results} is given by \sisac s calc-state in the ME. This guarantee can only be given, when each editing on the worksheet is mirrored in the calc-tree (eventually cutting certain branches, if an intermediate step is redone). Sometimes the learner might want to edit a calulation (shorten the calculation by cutting intermediate steps, etc.) without affecting the calc-tree any more.
|
wneuper@2365
|
219 |
{\bf\UR \sisac{} guarantees correct results.\label{COMMON:CALCDATA:correct}}
|
wneuper@2365
|
220 |
In this case the worksheet reflects the calc-state, which shall be indicated on the screen and on the printout; in the latter case this indication should be certificate which cannot be manipulated.
|
wneuper@2365
|
221 |
|
wneuper@2323
|
222 |
|
wneuper@1693
|
223 |
|
agriesma@308
|
224 |
|
wneuper@2334
|
225 |
\chapter{Requirements of the visitor}\label{UR:visitor}
|
agriesma@308
|
226 |
Each user approaching an \sisac-site first time wants to know about the purpose of \sisac{} and about the contents of the site.
|
wneuper@1693
|
227 |
\section{Browsers: overview -- detail:}
|
nsimic@3711
|
228 |
The contents of the knowledgebase and of the example collection
|
nsimic@3711
|
229 |
are expected to become very large. Thus there need to be
|
nsimic@3711
|
230 |
facilities to switch from an overview to a detail and vice versa.
|
nsimic@3711
|
231 |
These facilities should be handled similarly for all the browsers.
|
nsimic@3711
|
232 |
Primarily, there is no direct interaction between the visitor and
|
nsimic@3711
|
233 |
the ME. Information for the visitor should be provided in statical
|
nsimic@3711
|
234 |
HTML-Pages.
|
agriesma@308
|
235 |
|
agriesma@308
|
236 |
Visitors should get an overview over {\em all} the knowledge available at an \sisac-site, and {\em all} the explanations, and {\em all} the examples.
|
agriesma@308
|
237 |
%The HTML-pages should provide a learning environment for its Visitors. ...WN:nein!
|
agriesma@308
|
238 |
Therefore, access to additional information should be gained
|
agriesma@308
|
239 |
if available. %This additional information include mathematical details
|
agriesma@308
|
240 |
%like methods to solve a problem (which requires to call the ME, however), as well as \sisac\/-internal information like a description of used \emph{items}.
|
agriesma@308
|
241 |
|
agriesma@308
|
242 |
{\bf\UR There are 4 kinds of data to be browsed: theories, problems, methods, examples. \label{ur:4-data}}
|
agriesma@308
|
243 |
{\bf\UR All 4 kinds of data need a table of contents of variable detail. \label{ur:hierarchy-frame}}
|
wneuper@1693
|
244 |
{\bf\UR Browse through statical HTML-Pages \label{ur:browse-static}}
|
wneuper@1693
|
245 |
without e.g. matching a model with a problem.
|
agriesma@308
|
246 |
|
wneuper@1693
|
247 |
\section{Do some examples:}
|
agriesma@308
|
248 |
Visitors should get an overview over {\em all} the features available at an \sisac-site, and the most exciting feature is stepwise interactive calculating and reasoning guided by the system. This should be demonstrated by some examples, which also the visitor can execute.
|
wneuper@1693
|
249 |
%{\bf\UR Call of a worksheet from a link in the knowledge} for instance demonstrating an example for a definition, a problem, etc.
|
wneuper@1693
|
250 |
%{\bf\UR Execute some selected examples in the example collection. \label{visit-calc}}
|
agriesma@308
|
251 |
|
wneuper@2365
|
252 |
However, the possibility for any visitor to start an interactive calculation, i.e. a Worksheet from a browser would have resulted in a too complicated and unstable system. A respective architecture see \cite{AG:thesis}. Now a visitor has to choices:
|
agriesma@308
|
253 |
|
wneuper@2365
|
254 |
{\bf\UR A visitor can view a calculation. \label{}\\}
|
wneuper@2365
|
255 |
These calculations are displayed a a whole, with the possibility of folding and unfolding the hierarchical structure. There is no possibility of interactive stepwise construction of the calculation as described in sect.\ref{WN-requirements-learner}.
|
agriesma@308
|
256 |
|
nsimic@3711
|
257 |
{\bf\UR A visitor can download and run an interactive Worksheet.
|
nsimic@3711
|
258 |
\label{}} After downloading the launched front-end (containing the
|
nsimic@3711
|
259 |
Worksheet) there is a possibility to connect to a server running
|
nsimic@3711
|
260 |
the \sisac{} back-end performing the calculation and user
|
nsimic@3711
|
261 |
guidance.
|
wneuper@2365
|
262 |
|
wneuper@2365
|
263 |
|
wneuper@2365
|
264 |
|
wneuper@2365
|
265 |
|
wneuper@2365
|
266 |
\chapter{Requirements of the learner}\label{WN-requirements-learner}
|
wneuper@1693
|
267 |
|
wneuper@2329
|
268 |
%WN050519---AK04:thesis.p.36-38->isac-URD-----------BEGIN:dont delete this line
|
wneuper@2329
|
269 |
\footnote{Begin of copy from \cite{AK04:thesis} p.36-38}
|
wneuper@2329
|
270 |
\section{Start a calculation}
|
wneuper@2365
|
271 |
There are two different ways for users to approach \sisac s facilities for learning: (a) the user may browse the knowledge base, and eventually calculate an example (illustrating a definition, a problem, etc.) and (b) the user calculates examples from the example collection, and while asking for justifications of steps in the calculation enters knowledge browsers.
|
wneuper@1693
|
272 |
|
nsimic@3711
|
273 |
{\bf\UR{A calculation can be started for a pre-defined example from an example collection}\label{DIALOG:EXAMPLE:collection}}
|
wneuper@2323
|
274 |
|
nsimic@3711
|
275 |
{\bf\UR{A calculation can be started for a pre-defined example from the Knowledge Base}\label{DIALOG:EXAMPLE:knowledge}}
|
wneuper@2323
|
276 |
This is to illustrate knowledge from the Knowledge Base by typical examples stored with the knowledge.
|
wneuper@2323
|
277 |
|
wneuper@2365
|
278 |
{\bf\UR{A calculation can be started from scratch.}\label{DIALOG:empty}}
|
wneuper@2365
|
279 |
In this case, the calculation must start with specifying, and \sisac{}'s support is limited as described in UR.\ref{DIALOG:EXAMPLE:unknown}.
|
wneuper@4689
|
280 |
%WN040506 Bitte abschw�chen analog zu UR 2.0.7 !
|
wneuper@2323
|
281 |
%AK040509 hilfe, ich brauch eine kurze zusammenfassung der situation:
|
wneuper@4689
|
282 |
% 1. was muss mindestens gegeben sein, damit isac �berhaupt etwas machen kann??? im urspr�nglichen text (steht gleich drunter) ist keine rede davon, dass THEORY ben�tigt wird - "In this case the input of items in the 'given'-field is sufficient;"
|
wneuper@4689
|
283 |
% 2. was ist mit diesem minimalen input m�glich?
|
wneuper@4689
|
284 |
% 3. was kann isac zus�tzlich, wenn welche felder bekannt sind?
|
nsimic@3711
|
285 |
%WN040510: (calchead = model + specification;
|
nsimic@3711
|
286 |
% specification = theory, problem, method
|
nsimic@3711
|
287 |
%# einige items im model:
|
wneuper@2323
|
288 |
% (1)isac checkt die Anwendbarkeit von Taktiken (Rewrite associative geht nur,
|
wneuper@2323
|
289 |
% wenn Klammern im Term sind)
|
wneuper@2323
|
290 |
%# problem + items in model match problem:
|
wneuper@4689
|
291 |
% (1.5) +theory: ableitung einer formel �berpr�fen
|
wneuper@2323
|
292 |
% (1)wie oben
|
wneuper@2323
|
293 |
% +(2)check correctness of result (using the post-condition -- 'Zukunftsmusik')
|
wneuper@2323
|
294 |
%# problem + items in model match problem + method
|
wneuper@2323
|
295 |
% (1)+(2) wie oben
|
wneuper@2323
|
296 |
% +(3)propose next step
|
wneuper@2323
|
297 |
%
|
wneuper@4689
|
298 |
%zur Rolle der Theory brauche wir noch Erfahrung: bei der Differentialrechnung bewegt sich die Mittelschulmathematik _nur_ in den reellen Zahlen (es ist daher nur verwirrend, hier die theory spezifizieren zu lassen) -- aber beim Gleichungsl�sen gibt es entscheidende Unterschiede, ob man �ber der Menge der ganzen, der reellen oder der komplexen Zahlen (dh. verschiedenen theories) l�st ...
|
wneuper@2365
|
299 |
{\bf\UR{A calculation can start with specifying or solving.}\label{UR:WN-startcalc-specORsolve}} In order to emphasize exercising specifying {\em or} solving, which are very different tasks.
|
wneuper@2365
|
300 |
|
wneuper@2365
|
301 |
{\bf\UR{A calculation can be done like in an algebra system}\label{UR:WN-algebra-system}} by simple input of a function call like {\tt solve}, {\tt simplify}, {\tt integrate} or the like. In this case the specifying phase is skipped.
|
wneuper@2323
|
302 |
|
wneuper@2334
|
303 |
\section{User Guidance}\label{DIALOG:GUIDE}
|
wneuper@2365
|
304 |
{\bf\UR{\sisac{} provides User Guidance if the problem to be solved has been specified.}\label{DIALOG:user-guide}}
|
nsimic@3711
|
305 |
A problem known to the system implies that the system knows a method
|
wneuper@2365
|
306 |
to solve the problem. Thus \sisac{} can solve the problem automatically or propose the next step to be done.
|
wneuper@2365
|
307 |
|
wneuper@2365
|
308 |
{\bf\UR{\sisac{} can assist in calculating examples unknown to the system}\label{DIALOG:EXAMPLE:unknown}}
|
wneuper@2365
|
309 |
Without knowing the Problem, \sisac{} cannot propose steps or solve the Problem automatically. Still, \sisac{} can apply Tactics chosen by the user to a formula. With a theory specified, \sisac{} can check formulas input by the user for correctness and consistency with previous steps in the calculation. At all times, \sisac{} ensures the calculation displayed is consistent and error-free as detailed in \ref{COMMON:CALCDATA:correct}.
|
wneuper@2365
|
310 |
|
wneuper@2365
|
311 |
|
wneuper@2329
|
312 |
%{\bf\UR{\isac{} can offer a list of actions known to the system.\label{DIALOG:GUIDE:ACTIONS:known}}}
|
wneuper@2329
|
313 |
%%WN040506 ^^^^^^^ oder doch tactics ??
|
wneuper@2329
|
314 |
%%AK040509 wenns nur tactics sind, wird sich der user die meiste zeit zwischen rewrite, rewrite und rewrite entscheiden m�ssen. mehr hilfe haben wir nicht zu bieten?
|
wneuper@2329
|
315 |
%%WN0405010 beim Gleichungsl�sen 'Rewrite associative', 'Rewrite_Set simplify', 'solve (x�+x+1=0,x)'.
|
wneuper@2329
|
316 |
%% und in der specify-phase k�nnen wir auch allerhand vorschlagen.
|
wneuper@2329
|
317 |
%
|
wneuper@2329
|
318 |
%{\bf\UR{\isac{} can offer a list of actions applicable to the current situation.\label{DIALOG:GUIDE:ACTIONS:applicable}}}
|
wneuper@2329
|
319 |
%%WN040506 ^^^^^^^ oder doch tactics ??
|
wneuper@2329
|
320 |
%
|
wneuper@2329
|
321 |
%{\bf\UR{\isac{} can propose the next action to be taken.\label{DIALOG:GUIDE:ACTIONS:next}}}
|
wneuper@2329
|
322 |
%%WN040506 ^^^^^^^ oder doch tactic ??
|
wneuper@2329
|
323 |
%
|
wneuper@2329
|
324 |
%{\bf\UR{\isac{} can do one or more steps automatically.\label{DIALOG:GUIDE:auto}}}
|
wneuper@2329
|
325 |
%
|
wneuper@2334
|
326 |
%{\bf\UR{The user gets immediate feedback on data entered into the model.\label{DIALOG:GUIDE:model-feedback}}}
|
wneuper@2329
|
327 |
%
|
wneuper@2329
|
328 |
%{\bf\UR{The amount of user guidance is configurable.\label{DIALOG:GUIDE:configure}}}
|
wneuper@2329
|
329 |
%The amount can be set by the user according to his preferences or by a course designer to match requirements of the course. For exam purposes, the amount of user guidance can be limited.
|
wneuper@2329
|
330 |
%
|
wneuper@2365
|
331 |
{\bf\UR{\sisac{} can offer a list of actions meaningful in the current state}\label{DIALOG:GUIDE:ACTIONS:known}} of the calculation. 'Meaningful' is weaker than 'applicable', see UR.\ref{DIALOG:GUIDE:ACTIONS:applicable}
|
wneuper@1693
|
332 |
%WN040506 ^^^^^^^ oder doch tactics ??
|
wneuper@4689
|
333 |
%AK040509 wenns nur tactics sind, wird sich der user die meiste zeit zwischen rewrite, rewrite und rewrite entscheiden m�ssen. mehr hilfe haben wir nicht zu bieten?
|
wneuper@4689
|
334 |
%WN0405010 beim Gleichungsl�sen 'Rewrite associative', 'Rewrite_Set simplify', 'solve (x�+x+1=0,x)'.
|
wneuper@4689
|
335 |
% und in der specify-phase k�nnen wir auch allerhand vorschlagen.
|
wneuper@2365
|
336 |
%
|
wneuper@1693
|
337 |
|
wneuper@2365
|
338 |
{\bf\UR{\sisac{} can offer a list of actions applicable to the current state}\label{DIALOG:GUIDE:ACTIONS:applicable}} of the calculation.
|
wneuper@1693
|
339 |
%WN040506 ^^^^^^^ oder doch tactics ??
|
wneuper@1693
|
340 |
|
wneuper@2365
|
341 |
{\bf\UR{\sisac{} can propose the next action to be taken.}\label{DIALOG:GUIDE:ACTIONS:next}}
|
wneuper@1693
|
342 |
%WN040506 ^^^^^^^ oder doch tactic ??
|
wneuper@1693
|
343 |
|
wneuper@2365
|
344 |
{\bf\UR{\sisac{} can do one or more steps automatically.}\label{DIALOG:GUIDE:auto}}
|
wneuper@1693
|
345 |
|
nsimic@3711
|
346 |
\subparagraph{The flow of interaction} shall be adapted to the learner. The learner might be bored because the system offers too little challenge (by using less active dialog atoms -- see UR.\ref{dialog-atoms}, or by proceeding in too little steps of calculation) -- or, in contrary, the user might be frustrated by too high challenges (in activity and/or stepwidth).
|
wneuper@2365
|
347 |
{\bf\UR The 'activity' of the dialog atoms adapts to the learner.\label{}}
|
agriesma@308
|
348 |
|
wneuper@2365
|
349 |
{\bf\UR Varying stepwidth with tactics, rule sets and subproblems.\label{stepwidth}}
|
agriesma@308
|
350 |
|
wneuper@2365
|
351 |
|
wneuper@2365
|
352 |
\subparagraph{The dialog regards} presettings of the course admin (see Sect.\ref{course-admin} below), when guiding the flow of interaction, and the dialog regards the ongoing interaction with the student.
|
wneuper@2365
|
353 |
{\bf\UR The system records examples done/not done by a learner \label{expl-done}} regardless which course the learner is logged in.
|
wneuper@2365
|
354 |
{\bf\UR The dialog regards the performance \label{perform}} in calculations done by the learner in the current session. The performance is measured by response times, errors, difficulty of examples done, requests into the knowledge base, active-passive behaviour.
|
wneuper@2365
|
355 |
\footnote{The completion of this list is up to a future phase of development, and the evaluation of these data as well.}
|
wneuper@2365
|
356 |
{\bf\UR The dialog regards the knowledge \label{know}} touched by the learner in the current session.
|
wneuper@2365
|
357 |
{\bf\UR The dialog regards the history \label{history}} of performance and knowledge touched in previous sessions.
|
wneuper@2365
|
358 |
|
wneuper@2365
|
359 |
|
wneuper@2365
|
360 |
{\bf\UR{The amount of user guidance is configurable.}\label{DIALOG:GUIDE:configure}}
|
wneuper@2365
|
361 |
The amount can be set by the user according to his preferences or by a course designer to match requirements of the course. For exam purposes, the amount of user guidance can be limited.
|
wneuper@2365
|
362 |
|
wneuper@2365
|
363 |
{\bf\UR{The learner can override the Dialog behaviour chosen by the system.}\label{DIALOG:ADAPT:override}}
|
wneuper@2365
|
364 |
This includes the settings for dialog activity, stepwidth and display filtering rules. The conflicts between this UR and UR.\ref{DIALOG:GUIDE:configure} need to be resolved by an indepth design lateron.
|
wneuper@2365
|
365 |
|
wneuper@2365
|
366 |
|
wneuper@2365
|
367 |
|
wneuper@2365
|
368 |
\section{Help in the specify phase}
|
wneuper@2365
|
369 |
According to UR.\ref{COMMON:CALCDATA:phases} this phase comprises modeling (i.e. translating an example into a formal representation, the so-called Model) and specifying (i.e. relating the model to the mathematics knowledge available --- that means, identify an appropriate theory, a problem and a method).
|
wneuper@2365
|
370 |
|
wneuper@2365
|
371 |
In the model phase the learner generally has to input the \see items of a \see model (see the example for reference in chapter \ref{model} p.\pageref{model}): input and output items can be 'correct', 'incomplete', 'missing', 'superfluous' or have a 'syntax error'; preconditions can be 'correct' or 'false' (see UR.\ref{model-feedback}) --- these properties should be clearly indicated. This help is only possible, if the learner choose an example (with a hidden \see formalization and \see specification) from an \see example collection, or if he had specified a problem.
|
wneuper@2365
|
372 |
|
wneuper@2365
|
373 |
If users want to calculate an example {\em unknown} to the system they have two choices:
|
wneuper@2365
|
374 |
\begin{enumerate}
|
wneuper@2365
|
375 |
\item specify a problem in order to get help from the system. Again, there are two possibilities:
|
wneuper@2365
|
376 |
\begin{enumerate}
|
wneuper@2365
|
377 |
\item first specify the appropriate problem (which contains the \see item-descriptions), and then input the items. The item-descriptions help the user to provide the appropriate item-data.
|
wneuper@2365
|
378 |
|
wneuper@2365
|
379 |
\item first input the items (the item-descriptions are to be looked up in a specific theory), and then specify the problem --- already assisted by the system (see UR.\ref{ur-match} and UR.\ref{ur-refine}).
|
wneuper@2365
|
380 |
\end{enumerate}
|
wneuper@2365
|
381 |
\item do the calculation independently and without relying on assistance by the system (i.e. without specifying a problem, thus the system cannot check for completeness, and cannot assign a \see method). In this case the input of items in the 'given'-field is sufficient; the users can calculate the example by applying tactics (after manual input).
|
wneuper@2365
|
382 |
\end{enumerate}
|
wneuper@2365
|
383 |
|
nsimic@3711
|
384 |
{\bf\UR Visualization of the feedback on input to a model.\label{model-feedback}\label{DIALOG:GUIDE:model-feedback}} The user gets immediate feedback on data entered into the Model by means of an item-status. The item-status can be:
|
wneuper@2365
|
385 |
'correct', 'incomplete', 'missing', 'superfluous', 'syntax error' or 'false'.
|
wneuper@2365
|
386 |
|
wneuper@2365
|
387 |
|
wneuper@2365
|
388 |
|
wneuper@2365
|
389 |
\subparagraph{Retrieve a matching problem:}
|
wneuper@2365
|
390 |
Given a model initiating a calculation, or as a subproblem within a
|
wneuper@2365
|
391 |
calculation, the learner has to determine a problem matching this
|
wneuper@2365
|
392 |
model. This involves information retrieval from a large
|
wneuper@2365
|
393 |
problem-hierarchy. There the learner may get lost, and thus he
|
wneuper@2365
|
394 |
should get help: make the math-engine find a matching problem;
|
wneuper@2365
|
395 |
visualize the problem found within the hierarchy.
|
wneuper@2365
|
396 |
|
wneuper@2365
|
397 |
In case of an exam, the user is forced to find the correct problem with
|
wneuper@2365
|
398 |
no or limited help. Therefore it is nessesary to adjust the amount of
|
wneuper@2365
|
399 |
help given by the browsers (e.g. only ``match'' or ``nomatch'' instead
|
wneuper@2365
|
400 |
of a detailed listing of all conditions)
|
wneuper@2365
|
401 |
{\bf\UR \sisac{} can retrieve and match a model to a problem.\label{ur-match}\label{DIALOG:GUIDE:match}}
|
wneuper@2365
|
402 |
{\bf\UR \sisac{} can help by automated refinement of a problem.\label{ur-refine}\label{DIALOG:GUIDE:refine}}
|
wneuper@2365
|
403 |
|
wneuper@2365
|
404 |
|
wneuper@2365
|
405 |
|
wneuper@3176
|
406 |
\section{Views into the knowledge}\label{kb-context-views}
|
wneuper@3185
|
407 |
|
wneuper@3185
|
408 |
%WN060324--->thesis.ML-----------------BEGIN---please don't remove this line
|
wneuper@3185
|
409 |
|
wneuper@3190
|
410 |
\sisac{} is a 'transparent system' by providing access to all the knowledge the system requires for (automated) problem solving. The knowledge is structured within a 3-dimension universe as stated in UR.\ref{COMMON:CALCDATA:knowledge} on p.\pageref{COMMON:CALCDATA:knowledge}. Needless to say that the knowledge has a highly complex structure, and that it is a demanding challenge to help the student not to get lost in this structure.
|
wneuper@3176
|
411 |
|
wneuper@3176
|
412 |
Principally, there are two ways to acces the knowledge, (1) access along the structure inherent to the respective knowledge, and (2) access from a concrete calculation, where the knowledge is required for solving the problem. These two kinds of access are separated below.
|
wneuper@3176
|
413 |
|
wneuper@3259
|
414 |
\subsection{Surveys on related knowledge}\label{WN-urd-KEStore}
|
wneuper@3190
|
415 |
As example collections (respective requirements see sect.\ref{exp-coll}, sect.\ref{exp-struct} and sect.\ref{exp-edit}) are very close to the other three parts of knowledge, theories, problems and methods, we include them in this subsection.
|
wneuper@3176
|
416 |
|
wneuper@3259
|
417 |
{\bf\UR{Each element of the knowledge belongs to either theories, problems or a methods, or to the example collection.\label{UR.WN-thy-pbl-met}}}
|
wneuper@3259
|
418 |
The elements of belonging to theories are
|
wneuper@3259
|
419 |
\begin{itemize}
|
wneuper@3700
|
420 |
\item theorems
|
wneuper@3259
|
421 |
\item rule sets, i.e. sets of theorems or other rule sets, which are applied as long as they can be applied to a certain formula.
|
wneuper@3700
|
422 |
\item rewrite orders which are required to terminate rule sets which contain theorems on commutativity etc. TODO
|
wneuper@3700
|
423 |
\item computations involving sml-code (the only exception to rewriting). TODO
|
wneuper@3259
|
424 |
\end{itemize}
|
wneuper@3256
|
425 |
|
nsimic@3711
|
426 |
{\bf\UR Examples, theories, problems and methods all have a
|
nsimic@3711
|
427 |
hierarchical structure\label{UR-hierarchy}} and each element of
|
nsimic@3711
|
428 |
the knowledge base has a unique position in this hierarchy.
|
wneuper@3185
|
429 |
|
wneuper@3259
|
430 |
{\bf\UR{Each element of the knowledge base is displayed in the related browser.\label{UR.WN-thy-pbl-met-browser}}} This requirement has to be met in particular, if such an element is referenced by a link from another browser: where-ever such a link is located, the element is displayed in the browser it belongs to, a theory-element in the theory-browser etc.
|
wneuper@3176
|
431 |
|
wneuper@3259
|
432 |
{\bf\UR{Links can go from any element to any element.\label{}}} That means, an explanation for a problem can have a link to a method solving it, or to a theorem (in a theory) important for this problem; an explanation for a theorem can have a link to a problem, which uses the theorem in a certain way, etc.
|
wneuper@3190
|
433 |
|
wneuper@3190
|
434 |
{\bf\UR There are specific links which start an example.\label{}} Such a link may be located in any part of the knowledge; if the link is activated, the respective example is displayed in the example-browser (UR.\ref{UR.WN-thy-pbl-met-browser}) together with the examples location in the example hierarchy (UR.\ref{UR.WN-thy-pbl-met-hier-location}) {\bf and} a worksheet is opened for this example.
|
wneuper@3190
|
435 |
|
wneuper@3190
|
436 |
{\bf\UR Links outside \sisac's knowledge base open the standard browser.\label{}} i.e. links within the knowledge base may point anywhere, and if the destination is outside \sisac's knowledge, it is displayed outside \sisac, too.
|
wneuper@3176
|
437 |
|
wneuper@3259
|
438 |
{\bf\UR{An element is always displayed togehter with the respective location in the hierarchy.\label{UR.WN-thy-pbl-met-hier-location}}}. This requirement has to be met in particular, if the element is displayed following a link (indenpendently, from which browser).
|
wneuper@3176
|
439 |
|
wneuper@3259
|
440 |
{\bf\UR{Each element has a certain position in the respective hierarchy.\label{UR.WN-thy-pbl-met-hierarchy}}} The hierarchy is the means for systematic search by the user. This does {\em not} mean, that this position can serve as a unique identification over time, see UR.\ref{UR.WN-hier-location-not-persistent}~!
|
wneuper@3190
|
441 |
|
wneuper@3259
|
442 |
{\bf\UR{With each element in the knowledge base, explanations can be stored.\label{UR-explanation}\label{DIALOG:GUIDE:description}}}
|
wneuper@3259
|
443 |
Every element in the Knowledge Base can provide explanations illustrating its meaning, giving theoretical background information, referencing related topics or giving examples of use. See sect.\ref{WN-urd-courses} p.\pageref{WN-urd-courses} and also UR.\ref{UR-explanation-forall}.
|
wneuper@3190
|
444 |
|
wneuper@3204
|
445 |
%WN060324--->thesis.ML-----------------END---please don't remove this line
|
wneuper@3204
|
446 |
|
wneuper@3176
|
447 |
%{\bf\UR{.\label{}}\\}
|
wneuper@3176
|
448 |
%{\bf\UR{.\label{}}\\}
|
wneuper@3176
|
449 |
%{\bf\UR{.\label{}}\\}
|
wneuper@3176
|
450 |
|
wneuper@3176
|
451 |
\subsection{Context-related views}
|
wneuper@3176
|
452 |
|
wneuper@3190
|
453 |
The context is given by the state of a calculation (the so-called 'calc-state') on a Worksheet. UR.\ref{ur-match} and UR.\ref{ur-refine} is one case, the other is displaying a method with the tactic marked which just has been applied in a calculation (this is well-known from debuggers). And there are other dynamic views into the knowledge base.
|
wneuper@2365
|
454 |
|
wneuper@3439
|
455 |
%{\em Examples can {\em not} have a context, thus in this section they are excluded, if we mention 'knowledge base'.}
|
wneuper@3190
|
456 |
|
wneuper@3256
|
457 |
\paragraph{Context to all parts of the math-knowledge}
|
neuper@4108
|
458 |
%\#\#\#\#\#\#\#\#\#\#\#\#\#\#\#\#\#\#\#\#\#\# WN060704 begin update! \#\#\#\#\#\#\#\#\#\#\#\#\#\#\#\#\#\#\#\#\#\#\#\#\#\#\#\#\#\#\#\#\#
|
wneuper@3256
|
459 |
|
wneuper@3190
|
460 |
{\bf\UR{\sisac{}'s use of math knowledge can be watched by the user.\label{DIALOG:GUIDE:dynamic-view}}}
|
wneuper@3259
|
461 |
The user can look up the elements of the Knowledge Base currently used by \sisac{} to do a certain step in a calculation. This includes showing
|
wneuper@1693
|
462 |
\begin{itemize}
|
wneuper@3185
|
463 |
\item{Tactics} used in the calculation in their context in the Knowledge Base; particularly interesting are rewrite-tactics. The context to the calculation allows to display the rewrite, the assumptions generated, the rewrite-order used etc.
|
wneuper@3185
|
464 |
\item{Methods} being applied to solve the current problem with indication of the tactic being currently applied, of the method's guard etc.
|
wneuper@2365
|
465 |
\item{Problems} currently being solved in their context in the hierarchy of problems. This particularily helpful just before and after having \sisac{} refine a problem.
|
wneuper@1693
|
466 |
\end{itemize}
|
agriesma@308
|
467 |
|
wneuper@2365
|
468 |
{\bf\UR{On request, \sisac{} provides additional information on parts of the calculation.\label{DIALOG:GUIDE:detail}\label{detail}}\\}
|
wneuper@2365
|
469 |
Additional information in a calculation can be provided at any time on request of the learner. This feature comprises more detailed views onto the calc-state, as well as explanations according to the following table:
|
agriesma@308
|
470 |
\begin{center}
|
agriesma@308
|
471 |
\begin{tabular}{l l l}
|
agriesma@308
|
472 |
{\tt 'detail'} on & element & yields\\
|
agriesma@308
|
473 |
\hline\hline
|
wneuper@2323
|
474 |
whole formula & // & intermediate steps\\
|
wneuper@2323
|
475 |
whole formula & // & tactic applied or applicable\\
|
wneuper@2323
|
476 |
whole formula & // & applicable tactics\\
|
agriesma@308
|
477 |
whole formula & // & associated assumptions\\
|
wneuper@2323
|
478 |
whole formula & // & accumulated assumptions\\
|
agriesma@308
|
479 |
formula & function-constant & definition in the theory\\
|
agriesma@308
|
480 |
formula & floatingpoint-no & precision of this no\\
|
nsimic@3711
|
481 |
evaluated predicate
|
agriesma@308
|
482 |
& // & derivation\\
|
nsimic@3711
|
483 |
evaluated assumption
|
agriesma@308
|
484 |
& // & derivation\\
|
agriesma@308
|
485 |
\hline
|
agriesma@308
|
486 |
tactic & theorem & theorem instantiated\\
|
agriesma@308
|
487 |
theorem instantiated
|
agriesma@308
|
488 |
& // & animation of matching\\
|
wneuper@2323
|
489 |
%tactic & ruleset & intermediate steps\\
|
wneuper@2323
|
490 |
%tactic & subproblem & intermediate steps\\
|
wneuper@2323
|
491 |
%\hline
|
wneuper@2323
|
492 |
%error 'not matching'
|
wneuper@2323
|
493 |
% & // & animation of matching\\
|
agriesma@308
|
494 |
\hline
|
agriesma@308
|
495 |
\hline
|
wneuper@2323
|
496 |
{\tt 'detail'} on & calchead & yields\\
|
wneuper@2323
|
497 |
\hline
|
wneuper@2323
|
498 |
specification & theory & file of the respective theory\\
|
wneuper@2323
|
499 |
specification & problem & model instant. this problem\\
|
wneuper@2323
|
500 |
specification & problem & inst. problem in the hierarchy\\
|
wneuper@2323
|
501 |
%specification & problem & inherited assumptions\\
|
wneuper@2323
|
502 |
specification & method & guard instantiated by the model\\
|
wneuper@2323
|
503 |
specification & method & script in the hierarchy\\
|
agriesma@308
|
504 |
\end{tabular}
|
agriesma@308
|
505 |
\end{center}
|
wneuper@2323
|
506 |
|
gkompach@3821
|
507 |
{\bf\UR The context is a certain formula in a certain calculation\label{}} as displayed on the respective 'worksheet'.
|
wneuper@2323
|
508 |
|
wneuper@3251
|
509 |
%{\bf\UR{.\label{}}\\}
|
wneuper@2329
|
510 |
|
wneuper@3256
|
511 |
\#\#\#\#\#\#\#\#\#\#\#\#\#\#\#\#\#\#\#\#\#\# WN060704 end update! \#\#\#\#\#\#\#\#\#\#\#\#\#\#\#\#\#\#\#\#\#\#\#\#\#\#\#\#\#\#\#\#\#
|
wneuper@3256
|
512 |
|
gkompach@3821
|
513 |
% GK070304- tag for quicksearch START
|
wneuper@3832
|
514 |
\footnote{Begin of work extracted from \cite{ba-GK07}.}
|
wneuper@3256
|
515 |
|
gkompach@3821
|
516 |
{\bf\UR{A context is the current position on the worksheet last touched.}\label{}} The formula at this position is highlighted.
|
wneuper@3259
|
517 |
|
gkompach@3821
|
518 |
{\bf\UR{Usually there is a context to any of the 3 parts of the math-knowledge for a position. See also UR.\ref{UR.WN-no-worksheet-no-context} and UR.\ref{UR.GK-may-be-no-context}}\label{}}
|
wneuper@3256
|
519 |
|
gkompach@3821
|
520 |
{\bf\UR{If there is no Worksheet open, then there is no context.}\label{UR.WN-no-worksheet-no-context}}
|
wneuper@3256
|
521 |
|
gkompach@3821
|
522 |
{\bf\UR{There may be NO context for an element of the math-knowledge.}\label{UR.GK-may-be-no-context}} The reasons are specific to theories, problems and methods.
|
wneuper@3439
|
523 |
|
gkompach@3821
|
524 |
{\bf\UR{The default for $<$Context on/off$>$ is $<$on$>$}\label{}} - as soon as a Worksheet has been opened.
|
wneuper@3439
|
525 |
|
gkompach@3821
|
526 |
{\bf\UR{If the KnowledgeBrowser is opened the first time and there is no context, it displays the element at the root of the respective hierarchy.}\label{UR.WN-init-no-context}}.
|
wneuper@3259
|
527 |
|
gkompach@3821
|
528 |
{\bf\UR{Any formula in a calculation has a context (with different details to different parts of the math-knowledge).}\label{}}
|
wneuper@3256
|
529 |
|
gkompach@3821
|
530 |
{\bf\UR{The user can switch the context to a calculation on or off.}\label{}}
|
wneuper@3256
|
531 |
|
gkompach@3821
|
532 |
{\bf\UR{The context of an element is displayed in the respective browser-window.}\label{}} This is analoguous to UR.\ref{UR.WN-thy-pbl-met}
|
wneuper@3256
|
533 |
|
gkompach@3821
|
534 |
{\bf\UR{A context is displayed as soon as}\label{}} the window is activated or the respective button $<$theory$>$ $<$problem$>$ $<$method$>$ is pushed -- if the user has NOT decided for .
|
wneuper@3256
|
535 |
|
gkompach@3821
|
536 |
{\bf\UR{The contents of the hierarchy can be filtered (due to a UserModel).}\label{}}
|
wneuper@3256
|
537 |
|
gkompach@3821
|
538 |
{\bf\UR{The content of the hierarchy remains unchanged during a session
|
gkompach@3821
|
539 |
(SR: thus the hierarchy is loaded {\em once} at the beginning of a session)}\label{}}
|
wneuper@3256
|
540 |
|
wneuper@3256
|
541 |
|
agriesma@308
|
542 |
|
wneuper@3439
|
543 |
\paragraph{Context to examples\\}
|
wneuper@3439
|
544 |
|
gkompach@3821
|
545 |
{\bf\UR{The context of an example is the respective worksheet.}\label{}} If $<$Context on$>$ is set and a worksheet is brought to top, the respective example (i.e. the description of the example) is displayed in the example browser.
|
wneuper@3439
|
546 |
|
gkompach@3821
|
547 |
{\bf\UR{A worksheet started by $<$New$>$ has no context.}\label{}} It is handled according to UR.\ref{UR.WN-init-no-context}
|
wneuper@3439
|
548 |
|
gkompach@3821
|
549 |
{\bf\UR{$<$Context on/off$>$ is the only choice for examples.}\label{}} This choice is always available. It is never changed by the system.
|
wneuper@3439
|
550 |
|
gkompach@3821
|
551 |
{\bf\UR{A example may be displayed and {\em not} be allowed to calculate (according to the UserModel).}\label{}}
|
wneuper@3439
|
552 |
|
wneuper@3439
|
553 |
|
wneuper@3439
|
554 |
|
wneuper@3259
|
555 |
\paragraph{Context to elements of theories}
|
wneuper@3251
|
556 |
|
gkompach@3821
|
557 |
{\bf\UR{The context comes exactly from the current position on the worksheet.}\label{}}
|
wneuper@3259
|
558 |
|
gkompach@3821
|
559 |
{\bf\UR{$<$Context on/off$>$ is always available.}\label{}}
|
wneuper@3259
|
560 |
|
gkompach@3821
|
561 |
{\bf\UR{$<$To Worksheet$>$ is available if:}\label{}}
|
gkompach@3821
|
562 |
\begin{enumerate}
|
gkompach@3821
|
563 |
\item $<$Context on$>$ is selected {\em and}
|
gkompach@3821
|
564 |
\item the worksheet on top is in the specify phase (and a CalcheadPanel is open)
|
gkompach@3821
|
565 |
\end{enumerate}
|
wneuper@3439
|
566 |
|
gkompach@3821
|
567 |
{\bf\UR{$<$To Worksheet$>$ is {\em not} available:}\label{}}
|
gkompach@3821
|
568 |
\begin{enumerate}
|
gkompach@3821
|
569 |
\item if $<$Context off$>$ is selected, as described in UR.\ref{UR.GK-context-off-ref-worksheet-na}
|
gkompach@3821
|
570 |
\item if no worksheet is open
|
gkompach@3821
|
571 |
\item if the worksheet on top is in the solve phase (and {\em no} CalcheadPanel is open)
|
gkompach@3821
|
572 |
\end{enumerate}
|
wneuper@3439
|
573 |
|
wneuper@3259
|
574 |
|
wneuper@3251
|
575 |
|
wneuper@3439
|
576 |
\paragraph{Context to problems\\}
|
wneuper@3251
|
577 |
|
gkompach@3821
|
578 |
{\bf\UR{The context of a formula to the problems is given by the headline of the calc-head on the next higher level in the calculation.}\label{}}
|
wneuper@3256
|
579 |
|
gkompach@3821
|
580 |
{\bf\UR{The context of problem concerns the model of the current position and the modelpattern of a problem.}\label{}} Thus there is always a context, only exception is UR.\ref{UR.WN-init-no-context}
|
wneuper@3256
|
581 |
|
gkompach@3821
|
582 |
{\bf\UR{$<$Context on/off$>$ is always available.}\label{}}
|
wneuper@3256
|
583 |
|
gkompach@3821
|
584 |
{\bf\UR{If $<$Context off$>$ is selected, then $<$Refine$>$ and $<$To Worksheet$>$ are not available.}\label{UR.GK-context-off-ref-worksheet-na}}
|
wneuper@3256
|
585 |
|
gkompach@3821
|
586 |
{\bf\UR{$<$Refine$>$ is available if $<$Context on$>$ is selected.}\label{}}
|
wneuper@3251
|
587 |
|
gkompach@3821
|
588 |
{\bf\UR{$<$Refine$>$ is {\em not} available:}\label{}}
|
wneuper@3439
|
589 |
\begin{enumerate}
|
gkompach@3821
|
590 |
\item if $<$Context off$>$ is selected, as described in UR.\ref{UR.GK-context-off-ref-worksheet-na}
|
gkompach@3821
|
591 |
\item if no worksheet is open
|
wneuper@3439
|
592 |
\end{enumerate}
|
wneuper@3439
|
593 |
|
gkompach@3821
|
594 |
{\bf\UR{$<$To Worksheet$>$ is available if:}\label{}}
|
wneuper@3439
|
595 |
\begin{enumerate}
|
gkompach@3821
|
596 |
\item $<$Context on$>$ is selected {\em and}
|
gkompach@3821
|
597 |
\item the worksheet on top is in the specify phase (and a CalcheadPanel is open)
|
wneuper@3439
|
598 |
\end{enumerate}
|
wneuper@3439
|
599 |
|
gkompach@3821
|
600 |
{\bf\UR{$<$To Worksheet$>$ is {\em not} available:}\label{}}
|
wneuper@3439
|
601 |
\begin{enumerate}
|
gkompach@3821
|
602 |
\item if $<$Context off$>$ is selected, as described in UR.\ref{UR.GK-context-off-ref-worksheet-na}
|
gkompach@3821
|
603 |
\item if no worksheet is open
|
gkompach@3821
|
604 |
\item if the worksheet on top is in the solve phase (and {\em no} CalcheadPanel is open)
|
wneuper@3439
|
605 |
\end{enumerate}
|
wneuper@3439
|
606 |
|
wneuper@3439
|
607 |
|
wneuper@3439
|
608 |
|
wneuper@3439
|
609 |
\paragraph{Context to methods\\}
|
wneuper@3251
|
610 |
|
gkompach@3821
|
611 |
{\bf\UR{The context of a formula to the methods is given by the headline of the calc-head on the next higher level in the calculation.}\label{}}
|
wneuper@3256
|
612 |
|
gkompach@3821
|
613 |
{\bf\UR{The context of a method concerns the guard and the script.}\label{}} The script in context show the tactic which calculated the currents position; the guard is matched with the model of the problem at the current position.
|
wneuper@3256
|
614 |
|
gkompach@3821
|
615 |
{\bf\UR{$<$Context on/off$>$ is always available.}\label{}}
|
wneuper@3256
|
616 |
|
gkompach@3821
|
617 |
{\bf\UR{$<$To Worksheet$>$ is available if:}\label{}}
|
gkompach@3821
|
618 |
\begin{enumerate}
|
gkompach@3821
|
619 |
\item $<$Context on$>$ is selected {\em and}
|
gkompach@3821
|
620 |
\item the worksheet on top is in the specify phase (and a CalcheadPanel is open)
|
gkompach@3821
|
621 |
\end{enumerate}
|
wneuper@3256
|
622 |
|
gkompach@3821
|
623 |
{\bf\UR{$<$To Worksheet$>$ is {\em not} available:}\label{}}
|
gkompach@3821
|
624 |
\begin{enumerate}
|
gkompach@3821
|
625 |
\item if $<$Context off$>$ is selected, as described in UR.\ref{UR.GK-context-off-ref-worksheet-na}
|
gkompach@3821
|
626 |
\item if no worksheet is open
|
gkompach@3821
|
627 |
\item if the worksheet on top is in the solve phase (and {\em no} CalcheadPanel is open)
|
gkompach@3821
|
628 |
\end{enumerate}
|
wneuper@3256
|
629 |
|
gkompach@3821
|
630 |
% GK070304- tag for quicksearch END
|
wneuper@3832
|
631 |
\footnote{End of work extracted from \cite{ba-GK07}.}
|
wneuper@3251
|
632 |
|
akremp@767
|
633 |
\chapter{Requirements of the math author}\label{math-author}
|
wneuper@2329
|
634 |
All the
|
wneuper@2329
|
635 |
authoring of math knowledge is still be done on the SML toplevel,
|
agriesma@308
|
636 |
i.e. immediately on the datastructures holding the knowledge. This
|
agriesma@308
|
637 |
part of the task is described in the 'interfaces for authors of math
|
agriesma@308
|
638 |
knowledge' \cite{develop-experiment}.
|
agriesma@308
|
639 |
|
agriesma@308
|
640 |
{\bf\UR Remote access to the sml-kernel \label{}} is required. However, knowledge modfied need not yet imported to the production (i.e. tutoring) system.\\
|
agriesma@308
|
641 |
|
agriesma@308
|
642 |
Another result of authoring math knowledge, however, will be tools for the visitor and the learner to view the knowledge generated. This part of the task is described here.
|
agriesma@308
|
643 |
|
agriesma@308
|
644 |
%{\bf\UR \label{}}
|
agriesma@308
|
645 |
%{\bf\UR \label{}}
|
agriesma@308
|
646 |
{\bf\UR Automatic linking-tool \label{URinterlink}} supports setting links to other occurrences of an item: the system suggests links, the author accepts or rejects.
|
agriesma@308
|
647 |
%{\bf\UR Automatic links to additional, related informations if available. \label{URinterlink}}
|
agriesma@308
|
648 |
%%W.N. kann ich mir nicht vorstellen ...
|
nsimic@3711
|
649 |
%%A.G.(6.3.) ist nicht so unwahrscheinlich - vor allem mit dem event-modell
|
agriesma@308
|
650 |
%% von dinopolis sollte das moeglich sein - eventuell auch mit java-webstart
|
agriesma@308
|
651 |
%% (ab 1.4) - ich glaube die moeglichkeit besteht, ueber die implementierung
|
agriesma@308
|
652 |
%% hab ich mir noch nicht allzu viele gedanken gemacht - oder gibt es da ein
|
agriesma@308
|
653 |
%% problem an das ich nicht gedacht habe ?
|
agriesma@308
|
654 |
%%W.N. um das zu beantworten verstehe ich die Details noch zu wenig
|
agriesma@308
|
655 |
Automated linking is done between the following items:
|
agriesma@308
|
656 |
\begin{center}
|
agriesma@308
|
657 |
\begin{tabular}{l l l}
|
agriesma@308
|
658 |
item & in \dots & linked to occurrence in\\
|
agriesma@308
|
659 |
\hline\hline
|
agriesma@308
|
660 |
predicate & theorem & definition in theory\\
|
agriesma@308
|
661 |
& pre/postcondition & definition in theory\\
|
agriesma@308
|
662 |
theorem & tactic & definition in theory\\
|
agriesma@308
|
663 |
\hline
|
agriesma@308
|
664 |
TODO
|
agriesma@308
|
665 |
\footnote{This list may be completed.}
|
agriesma@308
|
666 |
\end{tabular}
|
agriesma@308
|
667 |
\end{center}
|
agriesma@308
|
668 |
|
agriesma@308
|
669 |
{\bf\UR Exchange data with other \sisac{} sites.\label{x-isac}\\}
|
agriesma@308
|
670 |
TODO
|
agriesma@308
|
671 |
{\bf\UR Exchange data with other knowledge bases. \label{}\\}
|
agriesma@308
|
672 |
TODO
|
agriesma@308
|
673 |
|
nsimic@3711
|
674 |
\subparagraph{Copyright}
|
wneuper@3190
|
675 |
is important as \sisac's development will depend on the efforts of many, many authors.
|
wneuper@3190
|
676 |
|
wneuper@3190
|
677 |
{\bf\UR Copyright on any substantial item or part of math knowledge.\label{UR-(c)-math}}
|
nsimic@3711
|
678 |
Such items are
|
wneuper@3190
|
679 |
\begin{itemize}
|
nsimic@3711
|
680 |
\item a theory, and within theories
|
wneuper@3190
|
681 |
\begin{itemize}
|
wneuper@3190
|
682 |
\item a rule set
|
nsimic@3711
|
683 |
%\item
|
nsimic@3711
|
684 |
%\item
|
wneuper@3190
|
685 |
\end{itemize}
|
wneuper@3190
|
686 |
\item a problem
|
wneuper@3190
|
687 |
\item method
|
nsimic@3711
|
688 |
%\item
|
wneuper@3190
|
689 |
\end{itemize}
|
wneuper@3190
|
690 |
See UR.\ref{UR-(c)-explanation}.
|
wneuper@3190
|
691 |
|
wneuper@3190
|
692 |
{\bf\UR An item can have more than author\label{}} according to the \sisac-charta.
|
wneuper@3190
|
693 |
%{\bf\UR \label{}}
|
agriesma@308
|
694 |
|
agriesma@308
|
695 |
|
agriesma@308
|
696 |
\paragraph{Authoring theories\\}
|
agriesma@308
|
697 |
The generation of the theory browser is already implemented by Isabelle. Within phase 1 of development, \sisac{} will take this component without any change.
|
agriesma@308
|
698 |
|
agriesma@308
|
699 |
\paragraph{Authoring problems\\}
|
agriesma@308
|
700 |
TODO
|
agriesma@308
|
701 |
|
agriesma@308
|
702 |
\paragraph{Authoring methods\\}
|
agriesma@308
|
703 |
TODO
|
agriesma@308
|
704 |
|
akremp@767
|
705 |
\chapter{Requirements of the dialog author}\label{dialog-author}
|
neuper@4108
|
706 |
The dialog author focuses on learning theory; administrative aspects of dialogs are discussed in chap.\ref{course-admin} for the course admin.
|
wneuper@2329
|
707 |
|
wneuper@2329
|
708 |
%WN050519---AK04:thesis.p.38-40->isac-URD-----------BEGIN:dont delete this line
|
wneuper@2329
|
709 |
\footnote{Begin of copy from \cite{AK04:thesis} p.38-40}
|
wneuper@2334
|
710 |
\section{User Profiling}\label{DIALOG:PROFILE}
|
wneuper@2329
|
711 |
%
|
wneuper@2329
|
712 |
%% \subparagraph{The dialog regards} presettings of the course admin (see Sect.\ref{course-admin} below), when guiding the flow of interaction, and the dialog regards the ongoing interaction with the student.
|
wneuper@2329
|
713 |
%
|
wneuper@2329
|
714 |
%{\bf\UR{\isac{} records examples done by the user.\label{DIALOG:PROFILE:examples}}\\}
|
wneuper@2329
|
715 |
%\isac{} keeps a per-user record of examples done and the user's performance in doing the example. The record is independent of the course the user has been logged into when doing the example.
|
wneuper@2329
|
716 |
%
|
wneuper@2329
|
717 |
%
|
wneuper@2329
|
718 |
%{\bf\UR{\isac{} records items in the Knowledge Base viewed by the user.\label{DIALOG:PROFILE:knowledge}}\\}
|
wneuper@2329
|
719 |
%This information can be used to base the Dialog Guide's behaviour on information supposedly known to the user.
|
wneuper@2329
|
720 |
%
|
wneuper@2329
|
721 |
%{\bf\UR{\isac{} records the user's success and errors.\label{DIALOG:PROFILE:success}}\\}
|
wneuper@2329
|
722 |
%This extends to application of single tactics as well as whole examples or courses.
|
wneuper@2329
|
723 |
%
|
wneuper@2329
|
724 |
%{\bf\UR{\isac{} records the user's time performance.\label{DIALOG:PROFILE:speed}}\\}
|
wneuper@2329
|
725 |
%In the future, assumptions about the user's familiarity with certain topics could be derived from these data.
|
wneuper@2329
|
726 |
%
|
wneuper@2329
|
727 |
%{\bf\UR{\isac{} records the user's activity.\label{DIALOG:PROFILE:activity}}\\}
|
wneuper@2329
|
728 |
%In this context, activity means the ratio of steps done by the user to the steps the user had done by \isac{}.
|
wneuper@2329
|
729 |
%
|
wneuper@2329
|
730 |
%TODO: different weight for different activities ???
|
wneuper@2329
|
731 |
%
|
wneuper@2329
|
732 |
|
wneuper@2329
|
733 |
|
agriesma@308
|
734 |
|
wneuper@1693
|
735 |
% \subparagraph{The dialog regards} presettings of the course admin (see Sect.\ref{course-admin} below), when guiding the flow of interaction, and the dialog regards the ongoing interaction with the student.
|
agriesma@308
|
736 |
|
nsimic@3711
|
737 |
{\bf\UR{\sisac{} records examples done by the user}\label{DIALOG:PROFILE:examples}}
|
wneuper@2365
|
738 |
\sisac{} keeps a per-user record of examples done and the user's performance in doing the example. The record is independent of the course the user has been logged into when doing the example.
|
wneuper@1693
|
739 |
|
wneuper@1693
|
740 |
|
wneuper@2365
|
741 |
{\bf\UR{\sisac{} records items in the Knowledge Base viewed by the user.}\label{DIALOG:PROFILE:knowledge}}
|
wneuper@1693
|
742 |
This information can be used to base the Dialog Guide's behaviour on information supposedly known to the user.
|
wneuper@1693
|
743 |
|
wneuper@2365
|
744 |
{\bf\UR{\sisac{} records the user's success and errors.}\label{DIALOG:PROFILE:success}}
|
wneuper@2365
|
745 |
This extends to application of single Tactics, fill-in patters and error-patterns as well as whole examples or courses.
|
wneuper@1693
|
746 |
|
wneuper@2365
|
747 |
{\bf\UR{\sisac{} records the user's time performance.}\label{DIALOG:PROFILE:speed}}
|
wneuper@1693
|
748 |
In the future, assumptions about the user's familiarity with certain topics could be derived from these data.
|
wneuper@1693
|
749 |
|
wneuper@2365
|
750 |
{\bf\UR{\sisac{} records the user's activity.}\label{DIALOG:PROFILE:activity}}
|
wneuper@2365
|
751 |
In this context, activity means the ratio of steps done by the user to the steps the user had done by \sisac{}.
|
wneuper@2329
|
752 |
%WN040506 ... had let done ...
|
wneuper@4689
|
753 |
%AK mein englischlehrer hats mir so erkl�rt, wie ichs geschrieben habe und die w�rterb�cher sind auch einverstanden.
|
wneuper@1693
|
754 |
|
wneuper@1693
|
755 |
|
wneuper@2334
|
756 |
\section{Flexible Dialog Behaviour}\label{DIALOG:FLEX}
|
wneuper@2329
|
757 |
%
|
wneuper@4689
|
758 |
%%WN040506 Das Folgende passt nicht recht gut hierher, scheint aber trotzdem wichtig: vielleicht 'future work' irgendwo am Schluss der Arbeit, wo Du auch darauf hinweisen kannst, welche konkreten Voraussetzungen Du f�r so eine Sprache geschaffen hast ...
|
wneuper@2329
|
759 |
%%AK040509 ist auch noch der text aus der alten doku. wird wie vorgeschlagen geschehen, sobald die zielkapitel form annehmen
|
wneuper@2329
|
760 |
%
|
wneuper@2329
|
761 |
%{\bf\UR{\isac{}'s Dialog behaviour is constructed from Dialog Atoms.\label{DIALOG:FLEX:atomic}}\\}
|
wneuper@2329
|
762 |
%We hope that it is possible to develop a language which allows to define dialog patterns as combinations of dialog atoms already implemented and dialog modes sequencing these atoms. By means of such a language learning strategies could be described, and this description could be interpreted in reaction to a dynamic dialog state and according to an knowledge profile.
|
wneuper@2329
|
763 |
%
|
wneuper@2329
|
764 |
%To do such 'dialog programming' is considered a comprehensive task, which in general exceeds the knowledge of a course designer or a course admin. On the other hand, a course admin can be expected to associate courses with dialog profiles, and a course designer can be expected to select dialog modes within process of time in a course.
|
wneuper@2329
|
765 |
%
|
wneuper@4689
|
766 |
%%WN040506 Hhhmmmm, as Folgende brauchst Du f�r das nachfolgende UR --- kann man das nicht irgendwo ganz am Anfang einf�hren ????
|
wneuper@2329
|
767 |
%The dialog atoms are the following, ordered by descending 'activity' of the learner \cite{wn:diss} and UC \ref{DIALOG:PROFILE:activity}: All atoms concern a step from the current formula \currf applying a tactic \tac which yields the resulting formula \res(the derivation of \currf), i.e. $f\longrightarrow^{\it tac}\;f^\prime$.
|
wneuper@2329
|
768 |
%\begin{enumerate}
|
nsimic@3711
|
769 |
%\item \label{putres} given \currf, input the next formula \res
|
wneuper@2329
|
770 |
%\item \label{fillres} given a partial $f^\prime$ (supplied by \sisac), complete $f^\prime$ such that it is a derivation of \currf
|
wneuper@2329
|
771 |
%\item \label{puttac}given \currf, input a tactic \tac to be applied to \currf
|
wneuper@2329
|
772 |
%\item given \currf, select \tac from a list (supplied by \sisac) to be applied to \currf
|
wneuper@2329
|
773 |
%\item \label{filltac} given \currf and a partial \tac, complete the \tac (i.e. a theorem, a substitution, etc.) such that it can be applied to \currf
|
wneuper@2329
|
774 |
%\item given \currf, \tac, and a partial \res, complete \res such that it is the result of applying \tac to \currf
|
wneuper@2329
|
775 |
%\item given \currf and \res, input \tac such that \res is the result of \currf applying \tac
|
wneuper@2329
|
776 |
%\item given \currf and \res, select \tac from a list (supplied by \sisac) such that \res is the result of \currf applying \tac
|
wneuper@2329
|
777 |
%\item given \currf, \res and a partial \tac, complete \tac such that \res is the result of \currf applying \tac
|
wneuper@2329
|
778 |
%\end{enumerate}
|
wneuper@2329
|
779 |
%
|
wneuper@2329
|
780 |
%% \UR{Dialog atoms according to the list above.}\label{dialog-atoms}
|
wneuper@2329
|
781 |
%% The 'activity' requested from the learner for doing such a dialog atom can be varied by the appropriateness of the lists of tactics supplied by \sisac{} and the structure of the formula to be completed. The appearance of the dialog atoms is very different depending on the phase, modeling or solving.
|
wneuper@2329
|
782 |
%
|
wneuper@2329
|
783 |
%{\bf\UR{The Dialog's behaviour can be configured.\label{DIALOG:FLEX:configure}}\\}
|
nsimic@3711
|
784 |
%The Dialog's behaviour can be preset by the course designer and the user to match the requirements of the situation in style and complexity. The probability of asking the user a question is an example of such a preset.
|
wneuper@2329
|
785 |
%
|
wneuper@2329
|
786 |
%
|
wneuper@2334
|
787 |
%{\bf\UR{The Dialog adapts the amount of user guidance to the user's skills.\label{DIALOG:FLEX:adapt-behaviour}}\\}
|
wneuper@2329
|
788 |
%Whenever possible, the dialog adapts its behaviour, i.e. the choice of Dialog Atoms, to challenge the user without frustrating him. The choice is based on the present and past actions of the individual user.
|
wneuper@2329
|
789 |
%
|
wneuper@2329
|
790 |
%
|
wneuper@2334
|
791 |
%{\bf\UR{The Dialog adapts the amount of information displayed to the learning situation.\label{DIALOG:FLEX:adapt-info}}\\}
|
wneuper@2329
|
792 |
%As with the Dialog's behaviour, the amount of information displayed adapts to the requirements of the current situation. This could mean displaying or not displaying the tactics used in the calculation or hiding specific steps in the calculation considered too complex or too trivial.
|
wneuper@2329
|
793 |
%
|
wneuper@2329
|
794 |
|
wneuper@1693
|
795 |
|
wneuper@4689
|
796 |
%WN040506 Das Folgende passt nicht recht gut hierher, scheint aber trotzdem wichtig: vielleicht 'future work' irgendwo am Schluss der Arbeit, wo Du auch darauf hinweisen kannst, welche konkreten Voraussetzungen Du f�r so eine Sprache geschaffen hast ...
|
wneuper@1693
|
797 |
%AK040509 ist auch noch der text aus der alten doku. wird wie vorgeschlagen geschehen, sobald die zielkapitel form annehmen
|
wneuper@1693
|
798 |
|
wneuper@2365
|
799 |
{\bf\UR{\sisac{}'s Dialog behaviour is constructed from Dialog Atoms}\label{DIALOG:FLEX:atomic}\label{dialog-atoms}}
|
wneuper@2329
|
800 |
We hope that it is possible to develop a language which allows to define Dialog Patterns as combinations of Dialog Atoms already implemented and Dialog Strategies sequencing these atoms. By means of such a language learning strategies could be described, and this description could be interpreted in reaction to a dynamic dialog state and according to a knowledge profile.
|
wneuper@1693
|
801 |
|
wneuper@2329
|
802 |
To do such 'dialog programming' is considered a comprehensive task, which in general exceeds the knowledge of a course designer or a course admin. On the other hand, a course admin can be expected to associate courses with dialog profiles, and a course designer can be expected to select Dialog Strategies within process of time in a course.
|
wneuper@1693
|
803 |
|
agriesma@308
|
804 |
|
wneuper@2329
|
805 |
% {\bf\UR{Dialog atoms according to the list above.}\label{dialog-atoms}}
|
wneuper@1693
|
806 |
% The 'activity' requested from the learner for doing such a dialog atom can be varied by the appropriateness of the lists of tactics supplied by \sisac{} and the structure of the formula to be completed. The appearance of the dialog atoms is very different depending on the phase, modeling or solving.
|
agriesma@308
|
807 |
|
wneuper@2329
|
808 |
{\bf\UR{The Dialog's behaviour can be configured.}\label{DIALOG:FLEX:configure}}
|
nsimic@3711
|
809 |
The Dialog's behaviour in terms of Dialog Atoms to be used can be preset by the course designer and the user to match the requirements of the situation in style and complexity. The probability of asking the user a question is an example of such a preset.
|
wneuper@2365
|
810 |
%{DIALOG:ADAPT:history}
|
wneuper@2329
|
811 |
% duplicate of the above?
|
wneuper@2329
|
812 |
% \UR{The Dialog Guide regards activity requirements set by the Course Administrator}\label{DIALOG:FLEX:preset}}
|
wneuper@1693
|
813 |
|
wneuper@2329
|
814 |
{\bf\UR{The number of calculation steps taken at a time can be configured.}\label{DIALOG:FLEX:stepwidth}}
|
nsimic@3711
|
815 |
This extends to taking several steps at a time and doing whole rulesets or subproblems in one step.
|
wneuper@2329
|
816 |
%WN040506 ..... (we will call this feature 'stepwidth' below).
|
wneuper@1693
|
817 |
|
wneuper@2329
|
818 |
{\bf\UR{The amount of information displayed can be configured.}\label{DIALOG:FLEX:info}}
|
wneuper@2329
|
819 |
As with the Dialog's behaviour, the amount of information can be preset to meet the requirements of the learning situation. This could mean displaying or not displaying the Tactics used in the calculation or hiding specific steps in the calculation considered too complex or too trivial.
|
wneuper@2329
|
820 |
|
wneuper@2329
|
821 |
|
wneuper@2329
|
822 |
|
wneuper@2334
|
823 |
\section{Adaptation to Individual Users}\label{DIALOG:ADAPT}
|
wneuper@2329
|
824 |
%
|
wneuper@2334
|
825 |
%\section{Adaptation to Individual Users}\label{DIALOG:ADAPT}
|
nsimic@3711
|
826 |
%% The flow of interaction is adapted to the learner. The learner might be bored because the system offers too little challenge (by using less active dialog atoms -- see UR\ref{dialog-atoms}, or by proceeding in too little steps of calculation) -- or, in contrary, the user might be frustrated by too high challenges (in activity and/or stepwidth).
|
wneuper@2329
|
827 |
%
|
wneuper@2329
|
828 |
%{\bf\UR{The activity of the Dialog Guide adapts to the learner.\label{DIALOG:ADAPT:activity}}\\}
|
nsimic@3711
|
829 |
%In a learning situation, active participation of the student is one key to acquiring and consolidating knowledge and skills.
|
wneuper@2329
|
830 |
%The Dialog Guide will support this by asking questions or letting the user decide what to do in the next step. On the other hand, with growing expertise, once thrilling questions become trivial and boring. The Dialog Guide adapts his strategy by dropping challenges the user has alredy mastered a few times.
|
wneuper@2329
|
831 |
%
|
wneuper@2329
|
832 |
%{\bf\UR{The Dialog Guide regards activity requirements set by the Course Administrator.\label{DIALOG:ADAPT:preset}}}
|
wneuper@2329
|
833 |
%
|
wneuper@2329
|
834 |
%{\bf\UR{The dialog regards the performance of the user.\label{DIALOG:ADAPT:perform}}\\}
|
nsimic@3711
|
835 |
%The performance is measured by response times, errors, difficulty of examples done,
|
nsimic@3711
|
836 |
%requests into the knowledge base and active-passive behaviour.
|
wneuper@2329
|
837 |
%%WN040506 ^^^^^^^^^^^^^^ EXOR activity ??
|
wneuper@4689
|
838 |
%%AK040509 ist mir beim ausputzen durch die lappen gegeangen. was w�re eine gute definition von "activity"?
|
wneuper@4689
|
839 |
%%WN040510 in meiner Diss hab' ich jedem Dialogatom eine 'activity-Ma�zah' zugewiesen !?
|
wneuper@2329
|
840 |
%% activity: beitrag user / beitrag isac
|
wneuper@2329
|
841 |
%
|
wneuper@2329
|
842 |
%{\bf\UR{The dialog regards the knowledge touched by the user in the current session.\label{DIALOG:ADAPT:knowledge}}}
|
wneuper@2329
|
843 |
%
|
wneuper@2329
|
844 |
%{\bf\UR{The dialog regards the history of the user.\label{DIALOG:ADAPT:history}}\\}
|
wneuper@2329
|
845 |
%In addition to the of performance and knowledge touched in the current session, the history of the user's previous sessions is regarded as well.
|
wneuper@2329
|
846 |
%
|
wneuper@2329
|
847 |
%% wrong place? preset or adapt?
|
wneuper@2329
|
848 |
%{\bf\UR{??? The number of calculation steps taken at a time can be configured.\label{DIALOG:ADAPT:stepwidth}}\\}
|
wneuper@2329
|
849 |
%This extends to taking several steps at a time and doing whole rulesets or subproblems in one step.
|
wneuper@2329
|
850 |
%%WN040506 ..... (we will call this feature 'stepwidth' below).
|
wneuper@2329
|
851 |
%
|
wneuper@2329
|
852 |
%{\bf\UR{The learner can override the dialog behaviour chosen by the system.\label{DIALOG:ADAPT:override}}\\}
|
wneuper@2329
|
853 |
%This includes the settings for dialog activity, stepwidth and display filtering rules.
|
wneuper@2329
|
854 |
%
|
wneuper@2329
|
855 |
|
wneuper@2329
|
856 |
|
wneuper@2329
|
857 |
|
nsimic@3711
|
858 |
% The flow of interaction is adapted to the learner. The learner might be bored because the system offers too little challenge (by using less active dialog atoms -- see UR\ref{dialog-atoms}, or by proceeding in too little steps of calculation) -- or, in contrary, the user might be frustrated by too high challenges (in activity and/or stepwidth).
|
wneuper@2329
|
859 |
|
wneuper@2334
|
860 |
%\UR{The Dialog adapts the amount of user guidance to the user's skills.}\label{DIALOG:FLEX:adapt-_behaviour}}
|
wneuper@2329
|
861 |
|
wneuper@2329
|
862 |
|
wneuper@2329
|
863 |
{\bf\UR{The activity of the Dialog Guide adapts to the learner.}\label{DIALOG:ADAPT:activity}}
|
nsimic@3711
|
864 |
In a learning situation, active participation of the student is one key to acquiring and consolidating knowledge and skills.
|
wneuper@2329
|
865 |
The Dialog Guide will support this by asking questions or letting the user decide what to do in the next step. On the other hand, with growing expertise, once thrilling questions become trivial and boring. The Dialog Guide adapts his strategy by dropping challenges the user has alredy mastered a few times.
|
wneuper@1693
|
866 |
Whenever possible, the dialog adapts its behaviour, i.e. the choice of Dialog Atoms, to challenge the user without frustrating him. The choice is based on the present and past actions of the individual user.
|
wneuper@1693
|
867 |
|
wneuper@2329
|
868 |
{\bf\UR{The Dialog adapts the amount of information displayed to the learning situation.}\label{DIALOG:ADAPT:info}}
|
wneuper@2329
|
869 |
As with the Dialog's behaviour, the amount of information displayed adapts to the requirements of the current situation.
|
wneuper@1693
|
870 |
|
nsimic@3711
|
871 |
{\bf\UR{The Dialog regards the performance of the user.}\label{DIALOG:ADAPT:perform}}
|
nsimic@3711
|
872 |
The performance is measured by response times, errors, difficulty of examples done,
|
nsimic@3711
|
873 |
requests into the Knowledge Base and Dialog Activity.
|
wneuper@1693
|
874 |
%WN040506 ^^^^^^^^^^^^^^ EXOR activity ??
|
wneuper@4689
|
875 |
%AK040509 ist mir beim ausputzen durch die lappen gegeangen. was w�re eine gute definition von "activity"?
|
wneuper@4689
|
876 |
%WN040510 in meiner Diss hab' ich jedem Dialogatom eine 'activity-Ma�zah' zugewiesen !?
|
wneuper@1693
|
877 |
% activity: beitrag user / beitrag isac
|
wneuper@1693
|
878 |
|
wneuper@2329
|
879 |
{\bf\UR{The Dialog regards the knowledge touched by the user in the current session.}\label{DIALOG:ADAPT:knowledge}}
|
wneuper@1693
|
880 |
|
wneuper@2329
|
881 |
{\bf\UR{The Dialog regards the history of the user.}\label{DIALOG:ADAPT:history}}
|
wneuper@1693
|
882 |
In addition to the of performance and knowledge touched in the current session, the history of the user's previous sessions is regarded as well.
|
wneuper@1693
|
883 |
|
wneuper@2365
|
884 |
\footnote{End of copy from \cite{AK04:thesis} p.38-40.}
|
agriesma@308
|
885 |
|
agriesma@308
|
886 |
|
akremp@767
|
887 |
\chapter{Requirements of the course admin}\label{course-admin}
|
wneuper@1693
|
888 |
Authoring in \sisac{} comprises various tasks: authoring mathematics knowledge and authoring the dialog have been described in Chapt.\ref{math-author} and Chapt.\ref{dialog-author}; these both tasks require more special knowledge than the others. Chapt..\ref{course-designer} describes a kind of knowledge ('explanations') which may change from one course to the other, and wich does not require special knowledge on computer mathematics or dialog design.
|
agriesma@308
|
889 |
|
wneuper@1693
|
890 |
The latter part of authoring is done by the course designer preparing as course in advance (see Chapt.\ref{course-designer}). Some of the knowledge prepared in advance underlies time constraints, which are managed by the course admin. The requirements of the course admin are separated in this section (despite the fact that the course designer and the course admin are one and the same person, the lecturer or teacher of the course).
|
agriesma@308
|
891 |
|
wneuper@3259
|
892 |
\section{Groups of learners}\label{WN-urd-courses}
|
wneuper@2365
|
893 |
There are groups of learners in order to support the adminstration of courses. The membership w.r.t. these groups determines the selections of examples in the example collecton (see UR.\ref{profile-details}), the selection of explanations in the knowledge (see UR.\ref{author-explanation})) and the initial setting of the dialog as captured in UR.\ref{DIALOG:FLEX:info} and UR.\ref{stepwidth}.
|
wneuper@2365
|
894 |
{\bf\UR Learners can be grouped into courses. \label{groups}\label{COMMON:USERS:groups}}
|
neuper@4209
|
895 |
There are groups of learners in order to support the adminstration of courses. The membership in these groups determines the selections of examples in the example collecton (see UR.\ref{profile-details}), the selection of explanations in the knowledge (see UR.\ref{author-explanation})) and the initial setting of the dialog as captured in UR.\ref{detail} and UR.\ref{stepwidth}.
|
neuper@4209
|
896 |
|
neuper@4209
|
897 |
{\bf\UR One learner may belong to different groups \label{mem}\label{COMMON:USERS:membership}} but only to {\em one} group within a session. For instance, a student of TUG can be member of Analysis semester 1, of Signal Processing semester 5, Analysis semester 2.
|
neuper@4209
|
898 |
|
neuper@4209
|
899 |
{\bf\UR Administrative information for groups \label{}} is part of any login, and should be available to the course admin for review at any time during a session.
|
wneuper@2329
|
900 |
\footnote{End of copy from \cite{AK04:thesis} p.38-40}
|
wneuper@2329
|
901 |
%WN050519---AK04:thesis.p.38-40->isac-URD-----------End:dont delete this line
|
agriesma@308
|
902 |
|
wneuper@2329
|
903 |
%WN050519---AK04:thesis.p.41->isac-URD-----------BEGIN:dont delete this line
|
wneuper@2329
|
904 |
\footnote{Begin of copy from \cite{AK04:thesis} p.41}
|
wneuper@2334
|
905 |
\section{Restrictions}\label{DIALOG:RESTRICT}
|
wneuper@1693
|
906 |
|
nsimic@3711
|
907 |
Restrictions will apply when using \sisac{} as a learning or tutoring tool, especially during exams. When being used as a calculation tool, restrictions are relaxed to gain access to the full power of the Math Engine.
|
wneuper@1693
|
908 |
% \subparagraph{Time limits for delivering course material} are a general requirement for educational systems, and it applies for example collections as well. This requirement provides the course admin to distribute workload over time and to focus the attention of the learners. Sometimes it may be desirable to have some examples finished within a certain time limit. Also examples (for instance prepared for an examination) may be invisible for learners.
|
wneuper@1693
|
909 |
|
wneuper@1693
|
910 |
{\bf\UR{Restrictions are individual to a user or group.\label{DIALOG:RESTRICT:individual}}}
|
wneuper@1693
|
911 |
|
wneuper@1693
|
912 |
{\bf\UR{Groups of examples may be invisible.\label{DIALOG:RESTRICT:examples}}}
|
wneuper@1693
|
913 |
Parts of the example collection may be inaccessible for specific groups of learners.
|
wneuper@1693
|
914 |
%WN040506 Herzeigen, aber nicht Hergeben ... ist das gut ??? Das folgende UR schiene mir hinreichend zu sein; dieses hier wegzulassen ?!
|
wneuper@1693
|
915 |
%AK040509 ist noch der alte text. drunter steht schon die notiz, die mich erinnern soll, nach dem unterschied zwischen "locked" und "invisible" zu fragen. wenn wir schon dabei sind: was war im alten text jeweils mit den worten gemeint?
|
wneuper@1693
|
916 |
|
wneuper@1693
|
917 |
% diff. locked/invisible?
|
nsimic@3711
|
918 |
% \UR{??? Groups of examples may be invisible}\label{invisible} for all users except the % example author.
|
wneuper@1693
|
919 |
|
wneuper@1693
|
920 |
{\bf\UR{Access to items in the Knowledge Base can be restricted.\label{DIALOG:RESTRICT:knowledge}}}
|
wneuper@1693
|
921 |
|
wneuper@1693
|
922 |
{\bf\UR{The amount of User Guidance may be restricted.\label{DIALOG:RESTRICT:guidance}}}
|
wneuper@1693
|
923 |
|
wneuper@1693
|
924 |
{\bf\UR{The use of Dialog Patterns may be restricted.\label{DIALOG:RESTRICT:patterns}}}
|
wneuper@1693
|
925 |
|
wneuper@1693
|
926 |
{\bf\UR{Restrictions may be overridden.\label{DIALOG:RESTRICT:override}}}
|
wneuper@1693
|
927 |
Depending on the settings provided by the course-designer and the user's access rights, some restriction may be overridden by the user. Overriding e.g. allows to look at explanations and examples for other courses.
|
wneuper@1693
|
928 |
%WN040506 Da wird man also restrictions 'overridable' and 'non-overridable' by the user haben
|
wneuper@1693
|
929 |
|
wneuper@1693
|
930 |
{\bf\UR{Restrictions may apply within time limits.\label{DIALOG:RESTRICT:time}}}
|
wneuper@1693
|
931 |
Some restrictions may apply only within certain time limits, e.g. during an exam or during class. Time limits can be given by start and finish or by their duration.
|
wneuper@1693
|
932 |
|
wneuper@1693
|
933 |
{\bf\UR{Restrictions may depend on the user's learning progress.\label{DIALOG:RESTRICT:goal}}}
|
wneuper@1693
|
934 |
Some restrictions may apply until certain examples have been solved or the user has mastered certain aspects of knowledge.
|
wneuper@2365
|
935 |
|
wneuper@2329
|
936 |
\footnote{End of copy from \cite{AK04:thesis} p.41}
|
wneuper@2329
|
937 |
%WN050519---AK04:thesis.p.41->isac-URD-----------End:dont delete this line
|
wneuper@1693
|
938 |
|
wneuper@1693
|
939 |
|
wneuper@1693
|
940 |
|
agriesma@308
|
941 |
\subparagraph{Time limits for delivering course material} are a general requirement for educational systems, and it applies for example collections as well. This requirement provides the course admin to distribute workload over time and to focus the attention of the learners. Sometimes it may be desirable to have some examples finished within a certain time limit. Also examples (for instance prepared for an examination) may be invisible for learners.
|
agriesma@308
|
942 |
%{\bf\UR \label{}}
|
wneuper@2334
|
943 |
{\bf\UR There are 2 kinds of time limits:\label{time-limits}} (1) given by start and finish, and (2) given by a duration (where start and finish are recorded with the user).
|
agriesma@308
|
944 |
{\bf\UR Groups of examples may be locked\label{expl-locked}} for groups of learners for certain time limits. (SR: attention with links from the KB !)
|
agriesma@308
|
945 |
{\bf\UR Groups of examples may be invisible\label{invisible}} for all users except the example author for certain time limits. (SR: examples have an author !)
|
nsimic@3711
|
946 |
{\bf\UR Restricted help for the learners during a exam\label{restrict-know}} %WNnein: depending on the location (classroom) or
|
agriesma@308
|
947 |
i.e. particular links into the knowledge base are restricted for a particular group for a limited time.
|
agriesma@308
|
948 |
{\bf\UR Access-rights during an exam-session \label{}} are particularily restricted (a user might get unwanted information by opening another session as a member of another group).
|
agriesma@308
|
949 |
{\bf\UR Restrictions may be overridden or not\label{other-courses}} depending on the setting by the course-designer. Overriding e.g. allows to look at explanations and examples for other courses.
|
agriesma@308
|
950 |
|
wneuper@1693
|
951 |
|
nsimic@3711
|
952 |
\section{Survey on the progress of the learners} i.e. of the students in a course. Such surveys are indispensable requirements for a course admin. Thus all the surveys below are related to a specific course.
|
agriesma@308
|
953 |
%{\bf\UR \label{}}
|
wneuper@2334
|
954 |
{\bf\UR There is a statistics-tool\label{statistics}} for the learners progress
|
wneuper@2334
|
955 |
{\bf\UR Statistics are drawn from\label{data-for-statistics}} the following data: TODO
|
agriesma@308
|
956 |
|
agriesma@308
|
957 |
Examples for statistics:
|
agriesma@308
|
958 |
\begin{itemize}
|
agriesma@308
|
959 |
\item Which examples have been done by whom with which performance
|
agriesma@308
|
960 |
\item Sorts w.r.t. the examples: frequency of touched, not touched, solved, unsolved (, evaluation of performance, as soon as evaluation functions have been designed) over all students of a course
|
agriesma@308
|
961 |
\item Sort w.r.t. the students: likewise over all examples in specified groups
|
agriesma@308
|
962 |
\item Which lookups into the knowledge have been done
|
agriesma@308
|
963 |
\item Sorts w.r.t. the destination: likewise over students
|
wneuper@3190
|
964 |
\item Sorts w.r.t. the students: likewise over the knowledge.\\
|
wneuper@3190
|
965 |
\end{itemize}
|
wneuper@3190
|
966 |
|
wneuper@3190
|
967 |
For preliminarily checking the usage of the system (as well as for preliminary monitoring of the system -- see sect.\ref{sysadmin-monitor}) the following requirement is stated, until the respective requirements analyses are done.
|
wneuper@3190
|
968 |
|
wneuper@3190
|
969 |
{\bf\UR A text-file records the usage of the system.\label{}} The records contain the following basic data for each user logging in during the life-time of the session-manager.
|
wneuper@3190
|
970 |
\begin{itemize}
|
wneuper@3190
|
971 |
\item at login
|
wneuper@3190
|
972 |
\begin{itemize}
|
wneuper@3190
|
973 |
\item user name (if there are anonymous users, record the mail address)
|
wneuper@3190
|
974 |
\item time of login
|
nsimic@3711
|
975 |
%\item
|
wneuper@3190
|
976 |
\end{itemize}
|
wneuper@3190
|
977 |
\item for each example called (no recording of access to the knowledge base~!)
|
wneuper@3190
|
978 |
\begin{itemize}
|
nsimic@3711
|
979 |
\item example-ID
|
wneuper@3190
|
980 |
\item time of starting the example (i.e. the respective worksheet)
|
wneuper@3190
|
981 |
\item time of removing the example (i.e. the respective worksheet)
|
nsimic@3711
|
982 |
%\item
|
wneuper@3190
|
983 |
\end{itemize}
|
wneuper@3190
|
984 |
\item at logout
|
wneuper@3190
|
985 |
\begin{itemize}
|
wneuper@3190
|
986 |
\item user name (if there are anonymous users, record the mail address)
|
nsimic@3711
|
987 |
\item number of examples
|
wneuper@3190
|
988 |
\item time of login and logout
|
nsimic@3711
|
989 |
%\item
|
wneuper@3190
|
990 |
\end{itemize}
|
nsimic@3711
|
991 |
%\item
|
agriesma@308
|
992 |
\end{itemize}
|
agriesma@308
|
993 |
|
neuper@4177
|
994 |
Special requirements may be raised by field studies on learning
|
neuper@4177
|
995 |
mathematics. \sisac{} shall be open for such special
|
neuper@4177
|
996 |
research. I.e. queries over examples, lookups, students {\em and
|
neuper@4177
|
997 |
courses}. Anonymous evaluation has to be regarded. {\bf\UR Anonymous
|
neuper@4177
|
998 |
evaluation of statistics.\label{}}
|
agriesma@308
|
999 |
|
neuper@4177
|
1000 |
\section{Written examinations} can be done due to requirements stated
|
neuper@4177
|
1001 |
elsewhere: hidden examples UR.\ref{invisible}, restricted access to
|
neuper@4177
|
1002 |
knowledge UR.\ref{restrict-know}, and adapted dialog
|
neuper@4177
|
1003 |
UR.\ref{dialog-atoms}.
|
wneuper@3190
|
1004 |
|
neuper@4177
|
1005 |
{\bf\UR The course admin can force a student to
|
neuper@4177
|
1006 |
exam-mode:\label{UR.WN-force-exam}} That includes, that there is no
|
neuper@4177
|
1007 |
way for this user, to open a session with a user-model which would
|
neuper@4177
|
1008 |
undermine the exam-mode. A student, in spite of being a member of a
|
neuper@4177
|
1009 |
group (or several groups), might be examined separated from other
|
neuper@4177
|
1010 |
members of the group (in case of illness at the time of the group's
|
neuper@4177
|
1011 |
exam etc.)
|
wneuper@3190
|
1012 |
|
neuper@4177
|
1013 |
{\bf\UR The course admin can force a group of users to
|
neuper@4177
|
1014 |
exam-mode:\label{}} Sideconditions as in UR.\ref{UR.WN-force-exam}.
|
wneuper@3190
|
1015 |
|
neuper@4177
|
1016 |
{\bf\UR The exam-mode is described as
|
neuper@4177
|
1017 |
follows:\label{UR:exam-mode-prelim}} Preliminarily, the buttons
|
neuper@4177
|
1018 |
$<$next$>$ and $<$auto$>$ are not available, neither in the
|
neuper@4177
|
1019 |
specification phase nor in the solve phase.
|
agriesma@308
|
1020 |
|
neuper@4177
|
1021 |
{\bf\UR The exam-mode can be quitted in several
|
neuper@4177
|
1022 |
ways:\label{UR:quit-exam}}
|
neuper@4172
|
1023 |
\begin{enumerate}
|
neuper@4172
|
1024 |
\item by the learner any time
|
neuper@4177
|
1025 |
\item predifined by settings (given by the course admin) the system
|
neuper@4177
|
1026 |
closes the exam-mode due to the time constraints set (and kindly
|
neuper@4177
|
1027 |
warning the learner in time)
|
neuper@4172
|
1028 |
\item by the course admin at any time (in case of cheating, etc)
|
neuper@4172
|
1029 |
\end{enumerate}
|
neuper@4172
|
1030 |
|
neuper@4177
|
1031 |
{\bf\UR The couse admin gets several views on the results of an
|
neuper@4177
|
1032 |
exam:\label{}} Required are views to individual results
|
neuper@4177
|
1033 |
(``Pr\"ufungseinsicht''), to groups, to several groups for comparison,
|
neuper@4177
|
1034 |
etc. These views can be printed out (``Pr\"ufungsliste'' only with
|
neuper@4177
|
1035 |
``Matrikelnummer'' for public announcement, etc).
|
neuper@4172
|
1036 |
|
neuper@4172
|
1037 |
%{\bf\UR :\label{}}
|
agriesma@308
|
1038 |
|
akremp@767
|
1039 |
\chapter{Requirements of the course designer}\label{course-designer}
|
agriesma@308
|
1040 |
|
wneuper@3185
|
1041 |
%WN060324--->thesis.ML-----------------BEGIN---please don't remove this line
|
wneuper@1693
|
1042 |
\section{General}
|
agriesma@308
|
1043 |
A course desinger prepares the learning materials and exercises for a course according to the goals of that course, or according to the learners' level. If \sisac{} is being used for a course, specific explanations may be added to the knowledge
|
agriesma@308
|
1044 |
\footnote{It is the task of a {\em mathematics author}, however, to edit the {\em contents} of a math knowledgebase~!}
|
agriesma@308
|
1045 |
and examples will be prepared within the example collection.
|
agriesma@308
|
1046 |
{\bf\UR Explanations from other \sisac-sites can be imported.\label{}}
|
agriesma@308
|
1047 |
{\bf\UR Examples from other \sisac-sites can be imported.\label{}}
|
wneuper@3176
|
1048 |
\\
|
wneuper@3176
|
1049 |
\\
|
wneuper@3190
|
1050 |
\noindent These requirements are important, because \sisac{} will be an open system in all respects. In particular, each \sisac-site shall go public with the knowledge and the examples available at this site --- for information of individual learners as well as a starting point for exchange of course-content between educational institutions.
|
wneuper@3176
|
1051 |
|
wneuper@3190
|
1052 |
{\bf\UR Copyright for the author of explanations.\label{UR-(c)-explanation}} See UR.\ref{UR-(c)-math}.
|
agriesma@308
|
1053 |
{\bf\UR Copyright for the author of examples.\label{}}
|
wneuper@3190
|
1054 |
%{\bf\UR \label{}}
|
agriesma@308
|
1055 |
|
agriesma@308
|
1056 |
|
wneuper@3190
|
1057 |
\section{Appearance of example collections}\label{exp-coll}
|
agriesma@308
|
1058 |
One application of \sisac{} will be to mechanize tutoring on existing example collections, as found for instance in traditional textbooks. Thus the example collection must copy the structure already given (the enumerations, page breaks, assembly on a page etc.) in order to allow the learner to find a particular example (e.g. given as homework). Traditional textbooks use arbitrary labels for their chapters and sections, the levels are nested arbitrarily deep, and there are arbitrary labels for the examples.
|
agriesma@308
|
1059 |
|
agriesma@308
|
1060 |
For copy-right reasons it also may happen, that the example itself (i.e. text, formulas, figures) is not displayed, only the respective label. In this case the label should be located exactly at the same position on a virtual 'page' on the screen as the original position in the page of the textbook.
|
agriesma@308
|
1061 |
%{\bf\UR Each example has a unique label. \label{}} Klaus.19.12.02
|
wneuper@3190
|
1062 |
{\bf\UR The labels of examples are defined by the author}\label{UR161a}
|
wneuper@3190
|
1063 |
{\bf\UR The layout can model textsbooks.\label{expl-layout}} i.e. the structure of the underlying system must be strong enough to model the structure of textbooks (but also exceeds this structure, e.g. with links)
|
agriesma@308
|
1064 |
%{\bf\UR \label{}}
|
agriesma@308
|
1065 |
|
wneuper@3190
|
1066 |
\section{The structure of example collections}\label{exp-struct} is a hierarchy of groups of examples. A group of examples consists of the part visible to the learner (which may be copied from a textbook) and meta data for \sisac{} to suggest examples of a level appropriate to an individual learner. There are already requirements concerning examples, UR.\ref{expl-locked} and UR.\ref{invisible}, which apply to groups of examples for convenience.
|
agriesma@308
|
1067 |
%{\bf\UR \label{}}
|
wneuper@3190
|
1068 |
{\bf\UR There is only one example collection in the system\label{}} in analogy to {\em one} problem-hierarchy and {\em one} method hierarchy, see UR.\ref{UR-hierarchy}. This collection, however, even may comprise several textbooks.
|
wneuper@2365
|
1069 |
{\bf\UR There are groups of examples \label{}} with common properties, see UR.\ref{expl-locked} and UR.\ref{invisible}.
|
agriesma@308
|
1070 |
%{\bf\UR The hierarchy of groups of examples can be zoomed in/out.} Klaus.19.12.02 nona
|
agriesma@308
|
1071 |
{\bf\UR A group and/or an example are weighted\label{}} w.r.t. properties to be defined in a later phase of development (at least the properties 'difficulty' and 'length').
|
agriesma@308
|
1072 |
{\bf\UR A tool for selecting examples\label{}} w.r.t. the weights (and the user-model etc.) is required. There may be also administrative concerns:
|
agriesma@308
|
1073 |
\begin{itemize}
|
agriesma@308
|
1074 |
\item A limit of the number of solved examples may be defined for a group; if the limit is touched, this group has been mastered successfully by a student within a certain course. An evaluation-function for the performance will be advantageous here in the future.
|
agriesma@308
|
1075 |
\item There might be obligatory examples in a group; i.e. such an example must be solved by a student in order to have the group mastered successfully.
|
agriesma@308
|
1076 |
\end{itemize}
|
agriesma@308
|
1077 |
%{\bf\UR \label{}}
|
agriesma@308
|
1078 |
|
wneuper@3190
|
1079 |
\section{Edit examples in the example collection}\label{exp-edit}
|
wneuper@3176
|
1080 |
An example can be described by verbal text, by formulas, and by figures (and eventual by movies). Additionally, each example contains data hidden from the visitor and the learner.
|
wneuper@2323
|
1081 |
%{\bf\UR Integrated editing of text, formulas and figures}\label{editors}
|
wneuper@2323
|
1082 |
{\bf\UR{Explanatory data can be embedded into examples}\label{COMMON:CALCDATA:explanations}}
|
wneuper@2323
|
1083 |
An example can be described by verbal text, by formulas, by figures and possibly by movies. Additionally, each example contains data hidden from the visitor and the learner.
|
wneuper@2323
|
1084 |
|
wneuper@2323
|
1085 |
{\bf\UR A formalization is a list of formulas.\label{COMMON:CALCDATA:formalization}}
|
wneuper@2323
|
1086 |
{\bf\UR A specification is a triple\label{COMMON:CALCDATA:specification}} of three pointers to a theory, a problem and a method respectively.
|
wneuper@2323
|
1087 |
{\bf\UR Each example is combined with a list of pairs of\label{COMMON:CALCDATA:example}} a formalization and a specification respectively.
|
wneuper@2323
|
1088 |
The pairs of Formalization and Specification are used for user guidance while specifying a calculation and are remain to users in a learning situation.
|
wneuper@3176
|
1089 |
{\bf\UR Formalizations and specifications are hidden\label{}} from the learner.
|
wneuper@2323
|
1090 |
{\bf\UR{An example may contain Error Schemes}\label{COMMON:CALCDATA:errorscheme}}
|
nsimic@3711
|
1091 |
An Error Scheme modelling typical errors and providing explanations
|
nsimic@3711
|
1092 |
and specific user guidance for resolving the errors
|
wneuper@3185
|
1093 |
may be stored with an example.An Error Scheme may be paired with an explanation (see UR.\ref{UR-explanation}\dots UR.\ref{UR-explanation-forall} below).
|
agriesma@308
|
1094 |
|
agriesma@308
|
1095 |
|
wneuper@3204
|
1096 |
\section{Checks for example collections}
|
wneuper@3204
|
1097 |
For each example or for groups of examples is necessary to run particular checks before delivery to the learners.
|
wneuper@3204
|
1098 |
\subsection{Check of format}
|
nsimic@3711
|
1099 |
Like the other items of \sisac s knowledge base, examples are stored in XML-format. The data in the XML-files are filtered and converted to HTML for presentation to the user.
|
wneuper@3204
|
1100 |
{\bf\UR A tool for checks on the conversion from XML to HTML\label{}} for groups of examples is required, and also for particular examples found to be buggy.
|
wneuper@3204
|
1101 |
\subsection{Check of solvability}
|
wneuper@3204
|
1102 |
The course designer addresses items of the mathematics knowledge (theories, problems, methods) prepared by math authors. It may be, that particular examples cannot be solved automatically by means of the knowledge addressed.
|
agriesma@308
|
1103 |
{\bf\UR A tool for batch-processing examples \label{}} is required.
|
agriesma@308
|
1104 |
{\bf\UR Errors for batch-processing \label{}} are: TODO
|
agriesma@308
|
1105 |
%{\bf\UR \label{}}
|
agriesma@308
|
1106 |
\\
|
agriesma@308
|
1107 |
|
wneuper@3185
|
1108 |
\section{Edit explanations in the knowledge base}
|
nsimic@3711
|
1109 |
As already mentioned, explanations are multi-media add-ons to the math-contents of the knowledge base. The latter is generated automatically from the SML-representation in the SML-kernel (where the knowledge in the SML-kernel is due to authoring by math-authors, see chap.\ref{math-author}.).
|
wneuper@3176
|
1110 |
|
wneuper@3185
|
1111 |
{\bf\UR An explanation may consist of\label{UR-explanation}} text, formulas, figures, movies, and links into \sisac's knowledge base itself, into the web, to an example in the resident site. Most HTML-editors, as presently available, meet the requirements for editing explanations.
|
wneuper@3176
|
1112 |
|
wneuper@3190
|
1113 |
{\bf\UR Each item in a knowledge base can have an explanation\label{UR-explanation-forall}}. This should also be possible within formulas, e.g. an explanation to a predicate in a 'where'-field of a model etc. . See also UR.\ref{DIALOG:GUIDE:description}.
|
wneuper@3176
|
1114 |
|
agriesma@308
|
1115 |
{\bf\UR Explanations are course-specific. \label{author-explanation}}
|
agriesma@308
|
1116 |
Each course might have different explanations according to the contents of the course, according to the specific example collection, and according to the learners' level.
|
wneuper@3185
|
1117 |
|
wneuper@3185
|
1118 |
{\bf\UR{The location of an item in the hierarchy is not persistent over time.\label{UR.WN-hier-location-not-persistent}}} For instance, a problem like 'linear equation' (together with its children) can be shifted around in the hierarchy of equations. As the knowledge comes from 2 sources, (1) exported from the SML-kernel after authoring by math-authors and (2) manually addition of explanations by course-designers, the identification of a primary key requires particular attention.
|
wneuper@3185
|
1119 |
|
wneuper@3185
|
1120 |
%WN060324--->thesis.ML-----------------END---please don't remove this line
|
wneuper@3185
|
1121 |
|
wneuper@3185
|
1122 |
{\bf\UR{There are tools to shift hundreds of explanations together with their items.\label{UR.WN-shift-items}}} This may happen with the above example for 'linear equation' together with its children, and with explanations for several user groups.
|
wneuper@3185
|
1123 |
|
wneuper@3185
|
1124 |
{\bf\UR{There are tools for searching the knowledge base.\label{UR.WN-search-kb}}} Not only the learner (see sect.\ref{kb-context-views}) but also the author depends on requirements for searching the knowledge; these requirements are different.
|
wneuper@3185
|
1125 |
|
wneuper@3185
|
1126 |
%{\bf\UR{.\label{}}\\}
|
wneuper@3185
|
1127 |
%{\bf\UR{.\label{}}\\}
|
wneuper@3185
|
1128 |
|
agriesma@308
|
1129 |
|
agriesma@308
|
1130 |
|
nsimic@3711
|
1131 |
\section{A knowledge profile} for each course results from the explanations following the requirements from above, plus from the detail knowledge is used in, from error schemes and from fill-in patterns for theorems.
|
wneuper@2365
|
1132 |
{\bf\UR An example group and/or an example specifies the details\label{profile-details}} as defined in UR.\ref{detail}.
|
wneuper@3185
|
1133 |
{\bf\UR There are error schemes,\label{}} eventually several for one theorem in a particular method, or for specific tactics in a particular method. An error scheme is paired with an explanation (UR.\ref{UR-explanation}\dots UR.\ref{UR-explanation-forall}).
|
agriesma@308
|
1134 |
|
nsimic@3711
|
1135 |
An Error Scheme modelling typical errors and providing explanations
|
nsimic@3711
|
1136 |
and specific User Guidance for resolving the errors
|
agriesma@308
|
1137 |
|
wneuper@2365
|
1138 |
{\bf\UR There are fill-in patterns\label{}} for theorems, eventually several for one theorem in a particular method. Such patterns are used for the dialog atoms UR.\ref{dialog-atoms}, e.g. \ref{fillres} or \ref{filltac}.
|
wneuper@1693
|
1139 |
|
wneuper@2365
|
1140 |
In addition to a tactic being applied manually by the user or automatically by \sisac{}, a tactic can be presented with parts left blank to be filled in by the user.
|
wneuper@1693
|
1141 |
|
wneuper@1693
|
1142 |
\section{A dialog profile} can be preset according to the students' level. These predefined setting can be overridden by the students in most cases, but not in all cases. The dialog profile will be more elaborated as soon the 'dialog programming' and the user model habe been clarified in a future development phase.
|
nsimic@3711
|
1143 |
{\bf\UR A dialog mode restricts the dialog atoms\label{}} (UR.\ref{dialog-atoms}) to be used by the learner within certain time limits (e.g. during the time of a written examination).
|
agriesma@308
|
1144 |
|
agriesma@308
|
1145 |
%\subparagraph{}
|
agriesma@308
|
1146 |
%{\bf\UR . \label{}\\}
|
agriesma@308
|
1147 |
%{\bf\UR . \label{}\\}
|
agriesma@308
|
1148 |
%{\bf\UR . \label{}\\}
|
agriesma@308
|
1149 |
%{\bf\UR . \label{}\\}
|
agriesma@308
|
1150 |
|
agriesma@308
|
1151 |
|
akremp@767
|
1152 |
\chapter{Requirements of the administrator}
|
wneuper@3190
|
1153 |
The administrator has to install the system and to monitor it. Moreover his duty is to implement the overall design of an \sisac-site. This includes introductory pages as well as an basic overall design (Corporate Design, links to ``home''...)
|
agriesma@308
|
1154 |
|
wneuper@3190
|
1155 |
\section{Install and monitor the system}\label{sysadmin-monitor}
|
wneuper@1693
|
1156 |
TODO
|
wneuper@1693
|
1157 |
|
wneuper@3190
|
1158 |
preliminary requirements:
|
wneuper@3190
|
1159 |
|
nsimic@3711
|
1160 |
{\bf\UR A text-file records the data exchange with the sml-kernel.\label{UR.WN-java-sml}} This file serves as a primitive way to check if the sml-kernel is alive as well as for debugging.
|
wneuper@3190
|
1161 |
%WN060407 presently called 'BridgeLog Java <=> SML'
|
wneuper@3190
|
1162 |
|
wneuper@3190
|
1163 |
{\bf\UR The system can be asked for the number of users logged in.\label{}}
|
wneuper@3190
|
1164 |
|
wneuper@3190
|
1165 |
{\bf\UR The system can be asked for the number of calculations under construction.\label{}}
|
wneuper@3190
|
1166 |
|
wneuper@3190
|
1167 |
|
wneuper@3190
|
1168 |
\section{Customize the appearance in the web}
|
wneuper@3190
|
1169 |
TODO
|
wneuper@3190
|
1170 |
|
wneuper@3190
|
1171 |
preliminary requirement:
|
wneuper@3190
|
1172 |
|
wneuper@3190
|
1173 |
{\bf\UR Basic parameters to adapt the HTML-outtput to a corporate
|
wneuper@3190
|
1174 |
design (e.g. colors, font, \dots)}
|
wneuper@3190
|
1175 |
|
wneuper@3190
|
1176 |
|
wneuper@3190
|
1177 |
%{\bf\UR \label{}}
|
agriesma@308
|
1178 |
%\subparagraph{}
|
agriesma@308
|
1179 |
|
wneuper@3190
|
1180 |
\newpage %to keep page numbering after some editing
|
wneuper@2566
|
1181 |
.
|