finished review WK bakk (conflicts in content handled) start-work-070517
authorwneuper
Wed, 31 Oct 2007 16:10:33 +0100
branchstart-work-070517
changeset 22783f38b42aab1
parent 226 a1c345718020
child 228 9ff3ce14614a
finished review WK bakk (conflicts in content handled)
doc/WK/content.tex
     1.1 --- a/doc/WK/content.tex	Wed Oct 31 16:05:26 2007 +0100
     1.2 +++ b/doc/WK/content.tex	Wed Oct 31 16:10:33 2007 +0100
     1.3 @@ -4,21 +4,16 @@
     1.4  
     1.5  \section{Recent developments in web technology}
     1.6  
     1.7 -%The interactivity of web1.0 and web2.0 browser 
     1.8 -%wikis
     1.9 -%WN070904 probably the most exciting development in ...technology ...
    1.10 -%As an introduction I would like to --- geht kuerzer:
    1.11 +%\end{document}
    1.12  Here I give a short overview of the main advantages of  web2.0. In order to do so the "basic" web1.0 shall be compared to the new web2.0 technology to show which of the two is better in terms of usability.
    1.13  
    1.14 -%\subsection{Why web2.0} ... nur wenn mehrere Items
    1.15  There have always been websites which are primarily intended to function as tools to facilitate the publication of online articles. In a nushell, a knowledge database can be defined as articles where users should bring their knowledge to the web and anyone who is interested should have the opportunity to obtain the knowledge in order to get all the information they want.
    1.16  Already this basic requirement is much better supported in web2.0.
    1.17 -In the following part I describe Wikis because this was one of the first application, which used the web2.0 technology and simply shows the main advantages of web2.0. And this \textit{interactive} web is one aspect, we also want to have in our \textit{isacweb} which is described in Chapt.\ref{isacweb}.
    1.18  
    1.19  \paragraph{Wikis:}
    1.20 - The first Wikis emerged around 1995 and remained unknown for quite some time. For most people Wikis were quite daunting because the syntax for writing was very challenging. Therefore it was not a big surprise that the publicity didn not work because hardly anybody would pass on information or positive feedback to their friends or tell them to visit a Wiki because it was not that streightforward to use a knowledge database. Generally speaking, the first impression of a site is very important but in this case it was too complex and confusing. For having success with such a knowledge database the site has to be catchy and appealing. Moreover  writing or manipulating articles must be easy for the user. This is the point where web2.0 was introduced. This technology has one major advantage compared to the Wiki from the beginning. With the Web2.0 technology it was possible to create such Wikis which can be used by anybody easily. 
    1.21 + The first Wikis emerged around 1995 and remained unknown for quite some time. For most people Wikis were quite daunting because the syntax for writing was very challenging. Therefore it was not a big surprise that the publicity didn't work because hardly anybody would pass on information or positive feedback to their friends or tell them to visit a Wiki because it was not that streightforward to use a knowledge database. Generally speaking, the first impression of a site is very important but in this case it was too complex and confusing. For having success with such a knowledge database the site has to be catchy and appealing. Moreover  writing or manipulating articles must be easy for the user. This is the point where web2.0 was introduced. This technology has one major advantage compared to the web I mentioned above. 
    1.22  % haben sich die wikis seit 1995 geaendert oder nicht ? Wenn nein, warum sind sie dann ploetzlich verwendet worden ? Wenn ja, was hat sich geaendert ?
    1.23 -Web2.0 makes the Wikis interactive and useable for everyone. In this case of a Wiki, a well known example is the Wikipedia. There you can write a new article or edit an existing one. By clicking on the \textless edit page\textgreater button the user becomes a texteditor to write and formate his article easily. For futher details see Fig.\ref{wiki} on page p.\pageref{wiki}. 
    1.24 +Web2.0 is interactive and useable for everyone. In this case of a Wiki, a well known example is the Wikipedia . There you can write a new article or edit an existing one. By clicking on the \textless edit page\textgreater button the user becomes a texteditor to write and formate his article easily. For futher details see Fig.\ref{wiki} on page p.\pageref{wiki}. 
    1.25  
    1.26  \begin{figure} [htb]
    1.27  \centerline{\psfig{
    1.28 @@ -27,9 +22,11 @@
    1.29  \label{wiki}
    1.30  \end{figure}
    1.31  
    1.32 -
    1.33 -No complex syntax is necessary anymore. This is the way how users can be brought to that site. An further advantage is, that the quality of the articles increases if users find the information in an article which turns out to be incorrect, imprecise or simply lacking depth, they are able to correct these things. Obviously there is also a major disadvantage, that comes along with this kind of dwvelopment since everyone is now able to manipulate articles to the wrong side. You can easily write articles, which are poor quality and contain information that is incorrect. But in the majority of cases, they get overwritten very soon. Another example off web2.0 is \textit{flickr} which is a huge digital photo database.You can upload and manage your photos online. Also Assembla is a great tool, which is a Wiki which facilitates the managing of project. You can split your work in tasks and milestones and watch the progress in every phase of the project. Also one nice effect is that you can upload there any files that are necessary for example for this teamwork. If you are more interested in Assembla just have a look at \cite{assembla} 
    1.34 -This is the way we should go when we want to bring \sisac{} to the web. The users should be able to do their work interactively and they should like working in the system and learning some mathematics. Also the navigation in the system is an important point. If the user does a calculation and doesn't know why this works like this, \sisac{} have to make it clear to the user, by showing the theorems or rules which were used and also some examples.
    1.35 +%\end{document}
    1.36 +No complex syntax is necessary anymore. This is the way how users can be brought to that site. An further advantage is, that the quality of the articles increases if users find the information in an article which turns out to be incorrect, imprecise or simply lacking depth, they are able to correct these things. Obviously there is also a major disadvantage, that comes along with this kind of dwvelopment since everyone is now able to manipulate articles to the wrong side. You can easily write articles, which are poor quality and contain information that is incorrect. But in the majority of cases, they get overwritten very soon. Another example off web2.0 is \textit{flickr} which is a huge digital photo database.You can upload and manage your photos online. Also Assembla is a great tool, which is a Wiki which facilitates the managing of project. You can split your work in tasks and watch the progress in every phase of the project.%assembla zitieren GENAU !
    1.37 +This 
    1.38 +% .. watch the progress in every phaseof the project ..???? WIRKLICH ?
    1.39 +is the way we should go when we want to bring \sisac{} to the web. The users should be able to do their work interactively and they should like working in the system and learning some mathematics. Also the navigation in the system is an important point. If the user does a calculation and doesn't know why this works like this, \sisac{} have to make it clear to the user, by showing the theorems or rules which were used and also some examples.
    1.40  
    1.41  
    1.42  \section{Specific requirements from eLearning math}
    1.43 @@ -55,7 +52,7 @@
    1.44  Today every user of a mathematics systems expects formulae rendered in two dimensions, for instance
    1.45  $$ \int\limits_{1}\limits^{3} \frac{1}{\sqrt{1-x^2}}\;  dx $$
    1.46  
    1.47 -The ability of webbrowsers to display such formulae, however, is still poor in spite of the MathML standard \cite{mathml2}.
    1.48 +The ability of webbrowersers to display such formulae, however, is still poor in spite of the MathML standard. %http..
    1.49   This crucial concern is out of scope of this thesis and {\em not} discussed in the sequel.
    1.50  
    1.51  
    1.52 @@ -90,11 +87,15 @@
    1.53  \end{enumerate}
    1.54  
    1.55  Learning contents are saved in a repository in form of objects. This solution has one big advantage because, when the teacher, who has the rights to do changes, wants to modify something in a learning content he only has to do this once and all courses which have references to this object will be updated automatically. Of course an object can be referenced by more than one course.
    1.56 -As you can see the LMS works together closely with the LCMS, in this way as the LCMS manages the learning contents for each course and the LMS is responsible for the whole course management, meaning that the system for instance tells you which course the user has to do next. As stated above, the LCMS is able to make a User Management, which we will need for our school mode. There it must be possible that teachers has more rights than the students and there is one very important requirement for \sisac{} to the eLearning system: the teacher should be able to supervise the student while doing his calculations. This gives the teacher the possibility to see where the student has problems and which things the student is good in. One requirement to ensure the learning progress definitely is to start out with easy examples and make them more challenging after the student has solved them successfuly. An other requirement to the system is that the user should be able to do calculations that he has already done, and had no problems so far, because maybe later in a higher level he can not remember. Moreover it would be necessary to solve the calculation immediately.
    1.57 +As you can see the LMS
    1.58 +% .. die Abkuerzung fuer LearningManagementSystem ist oben schon eingefuehrt !
    1.59 +works together closely with the LCMS,
    1.60 +%Learning Content Management System, ...BITTE IM FOLGENDEN IMMER KURZFORM...
    1.61 +in this way as the LCMS manages the learning contents for each course and the LMS is responsible for the whole course management, meaning that the system for instance tells you which course the user has to do next. As stated above, the Learning Content Management System is able to make a User Management, which we will need for our school mode. There it must be possible that teachers has more rights than the students and there is one very important requirement for \sisac{} to the eLearning system: the teacher should be able to supervise the student while doing his calculations. This gives the teacher the possibility to see where the student has problems and which things the student is good in. One requirement to ensure the learning progress definitely is to start out with easy examples and make them more challenging after the student has solved them successfuly. An other requirement to the system is that the user should be able to do calculations that he has already done, and had no problems so far, because maybe later in a higher level he can not remember. Moreover it would be necessary to solve the calculation immediately.
    1.62  If you are in search of a more detailed account on eLearning, simply consult \cite{Mason:E-Learning}.
    1.63  
    1.64  
    1.65 -\chapter{The Existing Userinterface  of \isac}\label{isac-gui}
    1.66 +\chapter{The Existing Userinterface  of \isac}\label{exist-user-interface}
    1.67  
    1.68  Isac is a system which does %it's 
    1.69  calculations in %many
    1.70 @@ -103,7 +104,7 @@
    1.71  \begin{figure} [htb]
    1.72  \centerline{\psfig{
    1.73      figure=myfig/9-calchead, width=13cm}}
    1.74 -\caption{\sisac s Front-end with the head of the calculation}
    1.75 +\caption{\sisac s Windowapplication with the head of the calculation}
    1.76  \label{calcHead}
    1.77  \end{figure}
    1.78  
    1.79 @@ -199,15 +200,21 @@
    1.80  
    1.81  %checked WN071030
    1.82  
    1.83 -\chapter{Transfer to Web2.0}\label{isacweb}
    1.84 +\chapter{Transfer to Web2.0}\label{isac-gui}
    1.85  
    1.86 +%What we want to have is a system which brings the modern aspects like interactivity to the user. Therefor it is necessary to have a look at which technologies are useful for us and which concepts should be avoided.
    1.87 +%WN071031 Versuch, auf gleichem Platz mehr Information unterzubringen ...
    1.88  
    1.89 -What we want to have is a system which brings the modern aspects like interactivity to the user. Therefor it is necessary to have a look at which technologies are useful for us and which concepts should be avoided.
    1.90 +The issue of this thesis is to transfer \sisac s front-end from Java Swing (including Java RMI) to Web2.0 technology. The transfer concerns the presentation of highly structured math knowledge as well as highly dynamic interaction.
    1.91 +
    1.92 +First we give a survey on relevant Web2.0 technologies and then we relate them to the requirements following from sect.\ref{exist-user-interface}.
    1.93  
    1.94  \section{Survey on relevant Web2.0 technologies}
    1.95  
    1.96  \subsection{Servlets}
    1.97 -Because we use Java as language on server side programming the first idea to make it interactive is to write a servlet, process the data the user types in and write the data back in form of html code back to the output stream. This method won't be very nice because in each servlet there is a lots of code only for presenting the data to the user.
    1.98 +Because we use Java as a language on the server side 
    1.99 +% WN071031 ... bitte verstaendlich machen und in Teilsaetze zerlegen ...
   1.100 +programming the first idea to make it interactive is to write a servlet, process the data the user types in and write the data back in form of html code back to the output stream. This method won't be very nice because in each servlet there is a lots of code only for presenting the data to the user.
   1.101  
   1.102  \subsection{Java server pages}
   1.103  An other possibility is using JavaServerPages and getting the request parameters inside of the JSP code. For demonstration have a look at the following example \begin{verbatim}
   1.104 @@ -224,65 +231,80 @@
   1.105  
   1.106  \end{verbatim}
   1.107  
   1.108 -
   1.109 -
   1.110  If these parameters exist this example will work fine and would be easier and shorter than the first solution. But there is still a big disadvantage. It is possible to write code inside of a JSP and nowadays the requirements of a web application are huge and there are enough HTML tags inside one file. So imagine you write your additional Java code inside this file and no programmer will be able to overview all this code and the maintenance of such a site would be impossible.
   1.111  
   1.112  \subsection{Java server faces}
   1.113 -Because of these problems there are some web-frameworks which should make such things easier, for example struts or JavaServer Faces. A main thing of such frameworks is, that they are structured in form of the Model-View-Controller principle(MVC).
   1.114  
   1.115 -This principle brings the advantage to the developer to write lots of the layout in such a layout language like JSP and strictly seperates the functionality from the layout things as you can see in  Fig.\ref{model2} on page p.\pageref{model2}.
   1.116 +Because of these problems there are some web-frameworks which should make such things easier, for example struts 
   1.117 +%WN071031 ... bitte eine Referenz (www, article, book) oder weglassen --- die Technik, Hinweise auf genauere Information zu geben, ist eines der Erfalgsfaktoren unseres Wissenschaftsbetriebes !!!
   1.118 +or JavaServer Faces
   1.119 +(short JSP)
   1.120 +%WN071031 ... Abkuerzungen gleich zu Beginn mit dem Abgekuerzten Begriff verbinden !
   1.121 +\cite{Marinscheck:jsf}.
   1.122 +%WN071031 ... Referenzen bitte gleich beim 1.Auftreten !
   1.123  
   1.124 +A main thing of such frameworks is, that they are structured in form of the Model-View-Controller principle (MVC) \cite{Buschmann:Patterns}.
   1.125 +%WN071031 ... Referenz bitte beim 1.Auftreten; alles andere macht den typischen Leser nervoes ;-)
   1.126 +
   1.127 +This principle brings the advantage to the developer, to write lots of the layout in such a layout language like JSP and strictly seperates the functionality from the layout things as you can see in  Fig.\ref{model2}. %on page p.\pageref{model2}.
   1.128  
   1.129  \begin{figure} [htb]
   1.130  \centerline{\psfig{
   1.131 -    figure=myfig/model2}}
   1.132 +    figure=myfig/model2.eps,width=8cm}}
   1.133 +%    figure=myfig/model2}}
   1.134  \caption{\textit{MVC} when using JavaServer Faces}
   1.135  \label{model2}
   1.136  \end{figure}
   1.137  
   1.138   So the result of this model is better for developers to write the code and also to do maintenance work inside of the code because there is less code inside of an JSP file. 
   1.139 -In \sisac{} project we will use JavaServer Faces \cite{Marinscheck:jsf} because this framework has three main advantages against struts:
   1.140 +In \sisac{} project we will use JSP
   1.141 +%WN071031 JavaServer Faces ... bei _einer_ Beschreibung bleiben (im Gegensatz zu Dichtungen, wo der Autor meist seine Vielseitigkeit im Worte-Finden beweist)
   1.142 +because this framework has three main advantages against struts:
   1.143  \begin{enumerate}
   1.144  \item User can choose the language for describing the site
   1.145  \item JSF has some reusable standard components
   1.146  \item JSF are more up to date
   1.147 +%WN071031 aber Moden koennen auch schnell wieder vergehen ?!?
   1.148  \end{enumerate}
   1.149  
   1.150 -For detailed Information to the \textit{MVC} principle, have a look at \cite{Buschmann:Patterns}.
   1.151 +%WN071030 das kommt hier zu spaet...Detailed information to the \textit{MVC} principle, have a look at \cite{Buschmann:Patterns}.
   1.152  
   1.153 +%WN071031 das ist einer der seltenen Faelle von Formatierung in latex ...
   1.154 +\noindent
   1.155 +Now I want to describe the three main parts of this \textit{MVC} on the server side. %WN071030 bitte die Formatierung von Begriffen wie {MVC} _einheitlich_: _immer_ italic, ODER _immer_ '' ODER _immer_ \tt{}, ...
   1.156  
   1.157 -Now I want to describe the three main parts of this \textit{MVC} on the server side.
   1.158  \paragraph{Managed-Beans}
   1.159 -As you can see above the data models are called Java-Beans and such a bean is a class in Java with some special properties:
   1.160 +As you can see above, the data models are called Java-Beans and such a bean is a class in Java with some special properties:
   1.161  \begin{itemize}
   1.162 -\item class must be public
   1.163 -\item class variables must be private
   1.164 +\item the class must be public
   1.165 +\item the class variables must be private
   1.166  \item each member variable can only be modified if there exists a get and a set method for this variable
   1.167  \item additional functions can be inserted as the developer wants to.
   1.168  \end{itemize}
   1.169  
   1.170  \paragraph{View}
   1.171 -The view part holds in case of \sisac{} the JavaServerPages but as I wrote before, with JSF the developer can choose the language for describing the sites.
   1.172 +The view part holds (as for instance, in case of \sisac) the JavaServerPages but as I wrote before, with JSF the developer can choose the language for describing the sites.
   1.173  
   1.174  \paragraph{Servlet Controller}
   1.175  The servlet controller is necessary for generating and initializing the managed beans, for generating and activating the JSPs and for holding the servlets.
   1.176  
   1.177 -But there is also a disadvantage when using JavaServer Faces, because when the applications gets more complex, the faces-config.xml increases very fast and it's difficult for the developer to find the things he wants. But for this problem exists a solution, with a so called faces config editor all the entries are sorted in a way to make the entries easy findable for the user. For example, all navigation rules can be found in one sub menu.
   1.178 +But there is also a disadvantage when using JavaServer Faces, because when the applications gets more complex, the faces-config.xml increases very fast and it's difficult for the developer to find the things he wants. But for this problem exists a solution, with a so called {\it faces config editor} all the entries are sorted in a way to make the entries easy findable for the user. For example, all navigation rules can be found in one sub menu.
   1.179  
   1.180  \subsection{Tabs and {\it dojo}'s instead of windows}
   1.181  
   1.182 -What we want to have in isac is one Browser tab seperated into some subparts. One way to get this is to use the standard html frames. You get the look that you want to have, a tree2 component which is described in Sect.\ref{tree}; inside one frame. The tree works as usual and everything is ok, but if you click at a leave in the tree, you may get a problem. And in our case of \sisac{} we definitely get this problem, because by clicking on such a leave which can represent a theory , we want to see the explanation in the neighbour frame and this is impossible with frames, because you have to tell the target and this didn't work in combination with the tree2 component.
   1.183 +What we want to have in isac, is one Browser tab
   1.184 +%warum _B_rowser aber _t_ab (gross / klein-Schreibung) ?
   1.185 + seperated into some subparts. One way to get this is to use the standard html frames. You get the look that you want to have, a tree2 component which is described in Sect.\ref{tree} inside one frame. The tree works as usual and everything is ok, but if you click at a leave in the tree, you may get a problem. And in our case of \sisac{} we definitely get this problem, because by clicking on such a leave which can represent a theory, we want to see the explanation in the neighbour frame and this is impossible with frames, because you have to tell the target and this didn't work in combination with the tree2 component.
   1.186  
   1.187  So with the frames we are not satisfied anymore and we have to find an alternative. I found an other way to separate the window in a toolkit called dojo.You can see dojo in action at \cite{dojo}. Dojo doesn't use frames to separate a window, but it use div's. With this div's everything works fine with the tree2 component, because it isn't necessary to specify a target. This is my solution to the problem of separating a window, sub parts should be resizeable and the tree2 component works fine, as you can see in the \textit{isacweb-preparations} project in the cvs. There is a file named \textit{dojo-test.jsp}. In this file you can see, that in dojo normal div' s and usually used and everything we want works fine.
   1.188  
   1.189  \section{Stepwise calculation}
   1.190  
   1.191  
   1.192 -Stepwise calculation is one of the specific features offered by \sisac{} as described in Sect.\ref{stepwise}; a calculation is presented in a {\it Worksheet}.
   1.193 -%WN in 2.1. schon einfuehren ...In the part of the program presenting a calculation (called {\it Worksheet}) 
   1.194 +Stepwise calculation is one of the specific features offered by \sisac{} as described in Sect.\ref{stepwise} a calculation is presented in a {\it Worksheet}.
   1.195 +%WN071000 in 2.1. schon einfuehren ...In the part of the program presenting a calculation (called {\it Worksheet}) 
   1.196  In a {\it Worksheet}
   1.197 -I wouldn't change a lot, because I think that the next and the auto button of the existing Front-end is basically a good idea. The \textless next\textgreater button for getting the next step of the calculation and the \textless auto\textgreater button to solve the complete problem. 
   1.198 +I wouldn't change a lot, because I think that the next and the auto button of the existing window application is basically a good idea. The \textless next\textgreater button for getting the next step of the calculation and the \textless auto\textgreater button to solve the complete problem. 
   1.199  
   1.200  \paragraph{\textless next\textgreater button:}
   1.201  This buttons are intuitive to use for the student and the names of the buttons tell the user what they do. By clicking on the \textless next\textgreater button a request \textit{next} must be sent to the server and then the server knows, that the user wants to have the next step and then communicates with the math engine submit the solution of this step.
   1.202 @@ -308,11 +330,20 @@
   1.203  \label{popup}
   1.204  \end{figure}
   1.205  
   1.206 +%WN071031 das Auf- und Zuklappen von Calculations (wie's in isac derzeit das Swing macht) kann sogar das alte html: 
   1.207 +%Back, Ralph-Johan and Grundy, Jim and von Wright, Joakim
   1.208 +%Structured Calculational Proof
   1.209 +%Formal Aspects of Computing, vol: 9, page(s): 469-483, 1998
   1.210 +%
   1.211 +%herunter zu laden von http://web.abo.fi/~backrj/
   1.212 +%HOFFE SEHR, DASS ES DA BESSERE MOEGLICHKEITEN GIBT ! Mach' vielleicht einen Hinweis auf noch unbekannte Moeglichkeiten. (koennte nicht der gleich unten genannte Tree2 erweitert werden ?)
   1.213  
   1.214  \section{Browse the mathematics knowledge}\label{tree}
   1.215  
   1.216  
   1.217 -For the isac project JSF with it's basic components is not enough for presenting the data in the way to make everything clear to the user. However, an Austrian programmers team is working on a reference implementation since 2001 which has a lot more components than the JSF standard programme. This implementation is called \textit{MyFaces} and since 2004 they belong to the \textit{ Apache Software Foundation}.
   1.218 +For the \sisac{} project JSF with it's basic components is not enough for presenting the data in the way to make everything clear to the user. However, an Austrian programmers team is working on a reference implementation since 2001 which has a lot more components than the JSF standard programme. This implementation is called \textit{MyFaces} 
   1.219 +%WN071031 \cite{}
   1.220 +and since 2004 they belong to the \textit{ Apache Software Foundation}.
   1.221  
   1.222   A lot of people are still working on this reference implementation for providing new components and functionality to the developers. An additional advantage is that MyFaces is an open source software, which means that everyone is allowed to see the source, use the components and to expand the functionality in the way the developer needs the components.
   1.223   For browsing the knowledge in \sisac{} we basically need a tree component for presenting the data in a hierarchical form. If you take a look at the \textit{Apache} homepage \cite{apache} you will see, that there are different tree components for selection. For the \sisac{} project we need the \textit{tree2} component because you have more options for giving the tree a nice look, for example with images in front of the node as Fig.\ref{tree2} on page p.\pageref{tree2} shows.
   1.224 @@ -336,9 +367,9 @@
   1.225  
   1.226  \section{Show context between calculation and knowledge}
   1.227  
   1.228 -One problem we have in the browser is to show the context between the calculation and one dimension of knowledge. First of all there must be a button or something comparable, which enables the context. One idea is to have three buttons-one for each dimension. When the context is enabled for instance to the theories, then the buttons to enable the context have to be invisible for the user. To disable the context, there must be a \textit{ToWorksheet} button in each knowledge dimension, but only the one which has the context must be visible. In the other subwindows the buttons shouldn't be available for the user. 
   1.229 +One problem we have in the browser is to show the context between the calculation and one dimension of knowledge. First of all there must be a button or something comparable, which establishes the context. One idea is to have three buttons-one for each dimension. When the context is enabled for instance to the theories, then the buttons to enable the context have to be invisible for the user. To disable the context, there must be a \textit{ToWorksheet} button in each knowledge dimension, but only the one which has the context must be visible. In the other subwindows the buttons shouldn't be available for the user. 
   1.230  Now we have the possibility to enable and disable the context between the calculation and every dimension of knowledge. But how should we make it clear to the user, which dimension the context has?
   1.231 -One possibility is just to enable the buttons in the dimension which has the context. An other one is to make acover icon visible in the specified subwindow. But I think these things are not strong enough. So a better solution would be to have the same background colour in the \textit{Worksheet} and in the dimension which has the context. One example how this could look like is demonstrated by Fig.\ref{context2} on page p.\pageref{context2}.
   1.232 +One possibility is just to enable the buttons in the dimension which has the context. An other one is to make a cover icon visible in the specified subwindow. But I think these things are not strong enough. So a better solution would be to have the same background colour in the \textit{Worksheet} and in the dimension which has the context. One example how this could look like is demonstrated by Fig.\ref{context2} on page p.\pageref{context2}.
   1.233  
   1.234  \begin{figure} [htb]
   1.235  \centerline{\psfig{
   1.236 @@ -349,3 +380,50 @@
   1.237  
   1.238  
   1.239  On the left hand side you can see the \textit{Worksheet} with one button to enable the context and on the right hand side you can see the 3 dimension of knowledge. The context is now enabled to the first dimension. The user has the possibility to disable this context, and enable it to an other dimension.
   1.240 +
   1.241 +\chapter{Conclusion}
   1.242 +
   1.243 +... careful selection of software components ...
   1.244 +
   1.245 +... tests using them showed:
   1.246 +
   1.247 +... highly structured math data can be represented ...
   1.248 +
   1.249 +... highly dynamic interaction during construction of calculations can be modelles ...
   1.250 +
   1.251 +
   1.252 +\begin{appendix}
   1.253 +
   1.254 +\chapter{Appendix: Tests on software components}
   1.255 +
   1.256 +The directory $\;${\tt /isacweb/srctest/coreservlets}$\;$ contains the following test cases:
   1.257 +
   1.258 +
   1.259 +\begin{verbatim}
   1.260 + 1      996  AjaxServlet.java
   1.261 + 2      666  ExampleBean.java
   1.262 + 3     1891  FacesRedirectFilter.java
   1.263 + 4      194  HealthPlanController.java
   1.264 + 5     1067  RegistrationBean.java
   1.265 + 6      373  SuggestionBean.java
   1.266 + 7     1090  SuggestionUtils.java
   1.267 + 8     8109  TreeBacker.java
   1.268 + 9      671  TreeBean.java
   1.269 +\end{verbatim}
   1.270 +
   1.271 +\noindent
   1.272 +These tests are briefly described and related to the discussion in Chap.\ref{isac-gui} as follows:
   1.273 +
   1.274 +\begin{enumerate}
   1.275 +\item  \label{AjaxServlet} AjaxServlet
   1.276 +\item  \label{ExampleBean} ExampleBean
   1.277 +\item  \label{FacesRedirectFilter} FacesRedirectFilter
   1.278 +\item  \label{HealthPlanController} HealthPlanController
   1.279 +\item  \label{RegistrationBean} RegistrationBean
   1.280 +\item  \label{SuggestionBean} SuggestionBean
   1.281 +\item  \label{SuggestionUtils} SuggestionUtils
   1.282 +\item  \label{TreeBacker} TreeBacker
   1.283 +\item  \label{TreeBean} TreeBean
   1.284 +\end{enumerate}
   1.285 +
   1.286 +\end{appendix}