<!DOCTYPE article PUBLIC "-//NLM//DTD JATS (Z39.96) Journal Archiving and Interchange DTD v1.0 20120330//EN" "JATS-archivearticle1.dtd">
<article xmlns:xlink="http://www.w3.org/1999/xlink">
  <front>
    <journal-meta>
      <journal-title-group>
        <journal-title>Cognitive Activities of Abstraction
in Object Orientation: An Empirical Study. Inroads - the SIGSCE
Bulletin.</journal-title>
      </journal-title-group>
    </journal-meta>
    <article-meta>
      <title-group>
        <article-title>Combining Symbolic and Sub-symbolic AI in the Context of Education and Learning</article-title>
      </title-group>
      <contrib-group>
        <contrib contrib-type="author">
          <string-name>Rainer Telesko</string-name>
          <email>rainer.telesko@fhnw.ch</email>
          <xref ref-type="aff" rid="aff0">0</xref>
          <xref ref-type="aff" rid="aff1">1</xref>
          <xref ref-type="aff" rid="aff2">2</xref>
        </contrib>
        <contrib contrib-type="author">
          <string-name>Stephan Jüngling</string-name>
          <email>stephan.juengling@fhnw.ch</email>
          <xref ref-type="aff" rid="aff0">0</xref>
          <xref ref-type="aff" rid="aff1">1</xref>
          <xref ref-type="aff" rid="aff2">2</xref>
        </contrib>
        <contrib contrib-type="author">
          <string-name>Phillip Gachnang</string-name>
          <email>phillip.gachnang@fhnw.ch</email>
          <xref ref-type="aff" rid="aff0">0</xref>
          <xref ref-type="aff" rid="aff1">1</xref>
          <xref ref-type="aff" rid="aff2">2</xref>
        </contrib>
        <aff id="aff0">
          <label>0</label>
          <institution>Current State of Work</institution>
        </aff>
        <aff id="aff1">
          <label>1</label>
          <institution>FHNW University of Applied Sciences and Arts Northwestern Switzerland, School of Business School of Business</institution>
          ,
          <addr-line>Riggenbachstrasse 16, CH-4600 Olten</addr-line>
          ,
          <country country="CH">Switzerland</country>
        </aff>
        <aff id="aff2">
          <label>2</label>
          <institution>University</institution>
          ,
          <addr-line>Palo Alto, California</addr-line>
          ,
          <country country="US">USA</country>
        </aff>
      </contrib-group>
      <pub-date>
        <year>2020</year>
      </pub-date>
      <volume>36</volume>
      <issue>2</issue>
      <fpage>82</fpage>
      <lpage>86</lpage>
      <abstract>
        <p>ion abilities are key to successfully mastering the Business Information Technology Programme (BIT) at the FHNW (Fachhochschule Nordwestschweiz). Object-Orientation (OO) is one example - which extensively requires analytical capabilities. For testing the OO-related capabilities a questionnaire (OO SET) for prospective and 1st year students was developed based on the Blackjack scenario. Our main target of the OO SET is to identify clusters of students which are likely to fail in the OO-related modules without a substantial amount of training. For the interpretation of the data the Kohonen Feature Map (KFM) is used which is nowadays very popular for data mining and exploratory data analysis. However, like all sub-symbolic approaches the KFM lacks to interpret and explain its results. Therefore, we plan to add based on existing algorithms - a “postprocessing” component which generates propositional rules for the clusters and helps to improve quality management in the admission and teaching process. With such an approach we synergistically integrate symbolic and sub-symbolic artificial intelligence by building a bridge between machine learning and knowledge engineering.</p>
      </abstract>
    </article-meta>
  </front>
  <body>
    <sec id="sec-1">
      <title>Introduction</title>
      <p>
        OO-related content exists in a considerable number of BIT
modules, mainly related to Business Analysis, Software
Engineering and IT Architecture. Researchers generally agree
that abstraction ability is a necessary skill for OO design and
OO programming
        <xref ref-type="bibr" rid="ref2 ref4 ref8">(Alphonce &amp; Ventura, 2002, Bennedsen
&amp; Caspersen, 2008; Nguyen &amp; Wong, 2001; Or-Bach &amp;
Lavy, 2004)</xref>
        ; however, a reliable instrument to test a
person’s level of abstraction ability in the context of OO has
not yet been developed. We focus in our research on the
abstraction ability, which is needed to build OO-related
abstractions based on the understanding of a predefined
domain.
For setting up the OO SET we focus on the abstraction
ability, which is relevant not only for the beginning of
programming in the small (classes, attributes, relationships,
hierarchies) but also for programming in the large (libraries,
frameworks, design patterns, software architectures). OOA
and OOD are still predominant in software engineering and
working with models as abstractions from code (e.g. UML
class diagrams) is vital not only for software- but also for
database- engineering (ERD).
      </p>
      <p>
        The OO SET was implemented with Google Forms
(https://forms.gle/rj5NSqmgTth1dm2f7). As a “test”
domain, a scenario related to the card game Blackjack was
selected, as this game is widely known and can be relatively
easy explained for a short assignment like the questionnaire.
Furthermore, the different cards and conditions (e.g. of a
particular casino) offer various possibilities for tasks in
connection with OO concepts. The first prototype contains 30
multiple choice questions, and in the first round of testing
we had 27 participants. In order to get a clearer picture of
the students’ aptitude and to support a more sophisticated
evaluation, every question is assigned both to a OO concept
category and a level according to
        <xref ref-type="bibr" rid="ref5">Bloom (1956)</xref>
        . In the BIT
program both students with and without pre-knowledge in
programming are enrolled. In order to “simulate” such a
situation for the OO SET, two test groups (i.e. total beginners)
and BIT 1st term students with some knowledge based on
the running Programming module were considered.
The first part of the questionnaire asks for information about
participants, such as age, prior OO knowledge, gender, etc.
and covers a basic overview of relevant OO principles by
using text, graphics and videos (see fig.1)
The second part of the questionnaire (see fig. 2) deals with
questions related to core OO concepts. The selection of the
OO concepts discussed and tested in the questionnaire was
made in consultation with BIT lecturers and based on
similar field research
        <xref ref-type="bibr" rid="ref10 ref3">(Bennedsen &amp; Schulte, 2006; Okur, 2007)</xref>
        .
The list of the OO concepts used and tested in the
questionnaire includes: classes, objects, classes vs. objects,
attributes, classes vs. attributes, methods in classes, parameters of
methods, inheritance, multiplicity, encapsulation and
relationships between classes (association, aggregation,
composition).
      </p>
      <p>
        While classes and objects are regarded as rather simple,
encapsulation is seen as a more advanced concept; thus, the
concepts vary in complexity. However, elements such as
polymorphism, abstract classes, interfaces, and Design
Patterns that are classified as more complex
        <xref ref-type="bibr" rid="ref10 ref3">(Bennedsen &amp;
Schulte, 2006; Okur, 2007)</xref>
        were not part of the
questionnaire.
One key criterion for selecting the elements above was to
have a high degree of overlap with the introductory
programming module in BIT which is the major challenge for
students to master successfully the assessment stage.
Currently this programming module follows an OO-first
approach using Eclipse as Integrated Development
Environment and JavaFX as framework for programming Graphical
User Interfaces. After deducting points for incorrect answers
to questions where multiple selections were possible, the
average questionnaire score across all student groups (i.e.
based on their self-indicated level of OO knowledge) was
55%. Intuitively, students that indicated they had prior OO
knowledge (i.e. identifying as “intermediate” or
“advanced”) performed better than those with little or no prior
OO knowledge, as can be seen in the following figure 3.
Based on the results of the overall score from all Bloom
levels being above 50%, and given that the scores increase with
the students’ level of OO knowledge, the questionnaire can
be considered as successfully testing the abstraction ability.
Test validity was checked by comparing the results of OO
SET with exam results from a module covering abstraction
abilities, namely “Introduction into BIT”. This module also
belongs to the assessment stage.
      </p>
    </sec>
    <sec id="sec-2">
      <title>Data Mining using the KFM</title>
      <p>Data from the OO SET can be used to optimize the
admission process and to identify clusters of students with similar
performance. Especially interesting are the students who fail
the aptitude test because they might share common
characteristics.</p>
      <p>
        For our first experiments, we used the Kohonen Feature
Map (KFM)
        <xref ref-type="bibr" rid="ref6 ref9">(Kohonen, 1998; Oja &amp; Kaski, 1999)</xref>
        . The
KFM is especially interesting when the clusters are not
known in advance, as it is the case in the data related to the
OO SET. The KFM is a two-layer, fully connected,
feedforward network where a multidimensional input vector is
mapped to a grid of output neurons. The KFM enables a
topological preservation of input vectors on the output layer
after training, i.e. input vectors with a high degree of similarity
in terms of Euclidian distance metrics are mapped to
neighbor neurons on the output layer. In our case the student
metadata (gathered from part 1 of the OO SET
questionnaire, like age, origin, entry qualifications etc.) is coded in
the input vector. The number of the neurons in the
competitive output layer is chosen arbitrary and builds the grid for
student neighborhoods sharing similar characteristics.
The following figure 4 shows the U-matrix (unified distance
matrix) of a trained KFM of the OO SET test results. Dark
neurons define the dissimilarity to the neighbor neuron and
the line highlights the borders of similarities in all
dimensions of the input vectors, thus similarity clusters of the
trained neurons.
A hierarchical clustering on the distances of the neurons to
their neighbors has been used as shown in figure 5. The
result are the three clusters colored in red, green and blue.
These clusters are the result of the similarity in all
dimensions of the neurons.
Certain dimensions are especially interesting, in order to
derive conclusive rules for the OO SET. Fuzzy rules are
especially interesting because they are understandable by
humans and can easily be processed. One of the most
interesting dimensions in the OO SET is whether the student passed
the test or not. The heatmap in figure 6 shows the three
clusters reduced on this dimension. The darker a neuron is, the
more pronounced is its pass characteristic and the more
contrast a neuron has to the neighbors the more dissimilar the
neuron is on this characteristic.
The first cluster with the light colored neurons represents
students, which clearly did not pass the test. It is surrounded
by the second cluster, which groups students, which are
close to the pass/fail borderline. The third cluster with the
dark colored neurons groups the students who clearly passed
the test. These clusters combined with the dimension
weights, as shown in figure 7, allow to derive meaningful
fuzzy rules based on the values in the different dimensions.
The weights of each neuron are representative or similar to
the student’s characteristics mapped to that neuron. The
correlation between age and education, the sections with the
two darkest greens are significantly pronounced and
correlate with the white colored pass dimension. This leads to a
conclusive fuzzy rule, that students with a high education
level and a high age will most likely pass the test.
The KFM uses a stochastic learning algorithm because input
vectors are selected randomly in order to avoid a bias. This
implies that with every experiment the feature map will look
differently by preserving the major topological
preservations. Another important issue is that the KFM does not
provide clusters at the end of the learning algorithm. Every
neuron on the output layer stands for a best-matching unit, in
our case a student best matching his input vector.
Neural networks only work well if sufficient amount of
representative data is available which is not yet the case.
Because we are currently spreading the OO SET among all
beginning and prospective students this situation will clearly
improve.
      </p>
    </sec>
    <sec id="sec-3">
      <title>KFM-based knowledge base</title>
      <p>
        In summary, our approach is divided into four-steps. First,
we set up a KFM based on the data gathered with the OO
SET. The KFM itself does not provide any clusters. In order
to get clusters, a post-processing is necessary in the second
step. Our approach is based on “coloring” output neurons
based on their distances on the map. Such a colored KFM
(U-matrix) shows light neurons belonging to the same
cluster with dark neurons at the cluster border
        <xref ref-type="bibr" rid="ref11">(Ultsch &amp; Korus,
1995)</xref>
        . In the third step, these clusters can be additionally
represented as fuzzy rules, which enables us to build up a
KFM-based knowledge base
        <xref ref-type="bibr" rid="ref11 ref7">(Ultsch &amp; Korus, 1995;
Malone, 2006)</xref>
        . The administrative staff as well as the
lecturers will use this knowledge base within the admission and
teaching processes. However, these rules have to be
continuously updated in the fourth and last step due to the probably
changing student distribution and performance results in the
OO SET over time.
      </p>
      <p>With such an approach (starting with the KFM and ending
up with rules) also the main drawback of sub-symbolic AI –
which consists in not being able to explain its results – can
be removed. The FHNW quality management gets a DSS
(decision support system) which enables to pay attention to
specific student groups during the enrollment and admission
process.</p>
    </sec>
    <sec id="sec-4">
      <title>Conclusion</title>
      <p>The main target of our research is to identify clusters of
students which are likely to fail in the OO-related modules in
order to optimize the admission and teaching processes.
Respective performance data concerning basic OO concepts is
generated via a questionnaire (OO SET). For learning the
“similarity” of students a neural network was used. As
reported in the previous section, the use of KFM provides the
possibility to cluster students with similar levels of
understanding OO concepts. This allows deriving rules as well as
subsequent learning units, which can be mapped to the
particular needs of the different student clusters and be based
on the taxonomy of Bloom. However, this process can be
generalized to other disciplines throughout the course of
studies. KFMs can be used to extract more general rules not
only related to the abstraction capabilities and OO thinking.
All our modules are described with learning goals, which
are mapped to the different taxonomy levels of Bloom.
Given the fact, that many lecturers already work with
questionnaires, which are published in the learning management
system Moodle, these questionnaires could easily be reused
to analyzed with KFMs and provide general possibilities to
analyze and individualize students the students learning
paths. Education al guidance can be provided based on more
detailed skill maps and support the overall process of AoL.</p>
    </sec>
  </body>
  <back>
    <ref-list>
      <ref id="ref1">
        <mixed-citation>
          <string-name>
            <surname>AACSB</surname>
          </string-name>
          (
          <year>2019</year>
          , November 14). Association to Advance Collegiate Schools of Business. Retrieved from https://www.aacsb.edu/.
        </mixed-citation>
      </ref>
      <ref id="ref2">
        <mixed-citation>
          <string-name>
            <surname>Alphonce</surname>
            ,
            <given-names>C.</given-names>
          </string-name>
          &amp;
          <string-name>
            <surname>Ventura</surname>
            ,
            <given-names>P.</given-names>
          </string-name>
          (
          <year>2002</year>
          ).
          <article-title>Object Orientation in CS1-CS2 by Design</article-title>
          .
          <source>Proceedings of the 7th Annual Conference on innovation and Technology in Computer Science Education</source>
          , Aarhus, Denmark, pp.
          <fpage>70</fpage>
          -
          <lpage>74</lpage>
          .
        </mixed-citation>
      </ref>
      <ref id="ref3">
        <mixed-citation>
          <string-name>
            <surname>Bennedsen</surname>
            ,
            <given-names>J.</given-names>
          </string-name>
          &amp;
          <string-name>
            <surname>Schulte</surname>
            ,
            <given-names>C.</given-names>
          </string-name>
          (
          <year>2006</year>
          ).
          <article-title>A Competence Model for Object Interaction in Introductory Programming</article-title>
          .
          <source>In Proceedings of the 18th Workshop of the Psychology of Programming Interest Group</source>
          , pp.
          <fpage>215</fpage>
          -
          <lpage>229</lpage>
          .
        </mixed-citation>
      </ref>
      <ref id="ref4">
        <mixed-citation>
          <string-name>
            <surname>Bennedsen</surname>
            ,
            <given-names>J.</given-names>
          </string-name>
          &amp;
          <string-name>
            <surname>Caspersen</surname>
            ,
            <given-names>M. E.</given-names>
          </string-name>
          (
          <year>2008</year>
          ).
          <article-title>Abstraction Ability as an Indicator of Success for Learning Computer Science</article-title>
          ? Sydney, Australia: ICER'
          <fpage>08</fpage>
          .
        </mixed-citation>
      </ref>
      <ref id="ref5">
        <mixed-citation>
          <string-name>
            <surname>Bloom</surname>
            ,
            <given-names>B. S.</given-names>
          </string-name>
          (Ed.). (
          <year>1956</year>
          ).
          <article-title>Taxonomy of educational objectives: The classification of educational goals, by a committee of college and university examiners</article-title>
          . New York: D.
          <string-name>
            <surname>McKay</surname>
          </string-name>
          .
        </mixed-citation>
      </ref>
      <ref id="ref6">
        <mixed-citation>
          <string-name>
            <surname>Kohonen</surname>
            ,
            <given-names>T.</given-names>
          </string-name>
          (
          <year>1998</year>
          ).
          <article-title>The self-organizing map</article-title>
          .
          <source>Neurocomputing</source>
          ,
          <volume>21</volume>
          (
          <issue>1-3</issue>
          ), pp.
          <fpage>1</fpage>
          -
          <lpage>6</lpage>
          .
        </mixed-citation>
      </ref>
      <ref id="ref7">
        <mixed-citation>
          <string-name>
            <surname>Malone</surname>
            ,
            <given-names>J.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>McGarry</surname>
            ,
            <given-names>K.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Wermter</surname>
            ,
            <given-names>S.</given-names>
          </string-name>
          and
          <string-name>
            <surname>Bowerman</surname>
            ,
            <given-names>C.</given-names>
          </string-name>
          (
          <year>2006</year>
          ).
          <article-title>Data mining using rule extraction from Kohonen self-organising maps</article-title>
          .
          <source>Neural Computing &amp; Applications</source>
          ,
          <volume>15</volume>
          (
          <issue>1</issue>
          ), pp.
          <fpage>9</fpage>
          -
          <lpage>17</lpage>
          .
        </mixed-citation>
      </ref>
      <ref id="ref8">
        <mixed-citation>
          <string-name>
            <surname>Nguyen</surname>
            ,
            <given-names>D.</given-names>
          </string-name>
          &amp;
          <string-name>
            <surname>Wong</surname>
            ,
            <given-names>S.</given-names>
          </string-name>
          (
          <year>2001</year>
          ).
          <article-title>OOP in Introductory CS: Better Students Through Abstraction</article-title>
          ,
          <source>Proceedings of the fifth Workshop on Pedagogies and Tools for Assimilating Object-Oriented Concepts</source>
          ,
          <source>OOPSLA.</source>
        </mixed-citation>
      </ref>
      <ref id="ref9">
        <mixed-citation>
          <string-name>
            <surname>Oja</surname>
            ,
            <given-names>E.</given-names>
          </string-name>
          and
          <string-name>
            <surname>Kaski</surname>
            ,
            <given-names>S.</given-names>
          </string-name>
          (
          <year>1999</year>
          ). Kohonen Maps. Elsevier, Amsterdam.
        </mixed-citation>
      </ref>
      <ref id="ref10">
        <mixed-citation>
          <string-name>
            <surname>Okur</surname>
            ,
            <given-names>M.</given-names>
          </string-name>
          (
          <year>2007</year>
          ).
          <article-title>Teaching Object Oriented Programming At The introductory Level</article-title>
          .
          <source>In Journal of Yasar University</source>
          .
          <volume>1</volume>
          (
          <issue>2</issue>
          ), pp.
          <fpage>149</fpage>
          -
          <lpage>157</lpage>
          .
        </mixed-citation>
      </ref>
      <ref id="ref11">
        <mixed-citation>
          <string-name>
            <surname>Ultsch</surname>
            ,
            <given-names>A.</given-names>
          </string-name>
          &amp;
          <string-name>
            <surname>Korus</surname>
            ,
            <given-names>D.</given-names>
          </string-name>
          (
          <year>1995</year>
          ).
          <article-title>Self-organizing Neural Networks for Acquisition of Fuzzy-Knowledge, Proceedings of the 3rd GIWorkshop Fuzzy-Neuro-Systeme in Darmstadt</article-title>
          , pp.
          <fpage>326</fpage>
          -
          <lpage>332</lpage>
          .
        </mixed-citation>
      </ref>
    </ref-list>
  </back>
</article>