<!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>ISEE</journal-title>
      </journal-title-group>
    </journal-meta>
    <article-meta>
      <title-group>
        <article-title>Appreciate the Journey not the Destination - Using Video Assignments in Software Testing Education</article-title>
      </title-group>
      <contrib-group>
        <contrib contrib-type="author">
          <string-name>Adnan Cˇ ausˇevic´</string-name>
          <email>adnan.causevic@mdh.se</email>
          <xref ref-type="aff" rid="aff0">0</xref>
        </contrib>
        <aff id="aff0">
          <label>0</label>
          <institution>Software Testing Laboratory, Ma ̈lardalen University Va ̈stera ̊s</institution>
          ,
          <country country="SE">Sweden</country>
        </aff>
      </contrib-group>
      <pub-date>
        <year>2018</year>
      </pub-date>
      <volume>1</volume>
      <fpage>4</fpage>
      <lpage>7</lpage>
      <abstract>
        <p>-Courses related to software testing education, at the university level, in most cases have a learning outcome requiring from students to understand and apply a set of test design techniques upon completing the course. The problem, however, remains on how to both effectively and efficiently evaluate if a student has accomplished the stated outcome. By purely looking at the final resulting set of the test cases provided by a student, it is not evident which, if any, test design technique was used to derive them. In this paper, we are presenting a rather simple but effective method of collecting video assignment submissions from students instead of a traditional source code and tests solution. This way, the teacher could rather quickly and in detail gather evidence that student indeed obtained the knowledge needed for passing the stated learning outcome.</p>
      </abstract>
    </article-meta>
  </front>
  <body>
    <sec id="sec-1">
      <title>I. INTRODUCTION</title>
      <p>With an ever-growing number of university students, who
are studying software engineering, the need for efficient and
effective methods of evaluating homework assignments is
evident. By efficient, here we are mostly referring to the effort
spent on grading these assignments by the examiner (or the
teacher) and such an effort is often expressed in the time
needed to complete it. In addition, another type of resources
could be spent in grading, like using specific hardware where
assignment has to be downloaded or a specific service (as in
cloud-based) that has to be accessed. When referring to the
effective evaluation of homework assignments, here we are
mostly interested in how to easily detect deviations between
the provided assignment and a given learning outcome for
which the assignment was designed.</p>
      <p>Software Testing education, as an important aspect of
software engineering, can not be isolated from this problem.
Practical assignments, in which it is often asked from students
to apply specific test design techniques on a given system
under test, could rather easily grow in complexity. But more
importantly, in contrast to other disciplines, having only one
correct solution in this field is rather unusual. This problem
highlights the importance of evaluating how students applied
a given test design technique rather than its outcome.</p>
      <p>In this paper, we are presenting a rather simple but effective
method of collecting video assignment submissions from
students instead of a traditional source code and tests solution.
This way, the teacher could rather quickly (by going
fastforward) and in detail (by pausing and replaying certain parts)
gather evidence that student indeed obtained the knowledge
needed for passing the stated learning outcome. In addition,
by sharing videos among students via course social media
channels, motivation for students to provide quality solutions
is even higher.</p>
      <p>In the following section, we are discussing existing reports
on advancing test education with respect to efficient
assignment grading process, as well as some approaches to using
video as a media for assignments. Section III address the
peculiarities of software testing assignments and in particular
discuss how to evaluate correct usage of the test-driven
development approach. Section IV presents the process used for
video assignments in one instance of a Software Verification
&amp; Validation course. Section V discusses threats to the general
applicability of this approach with final conclusions and future
work ideas presented in Section VI.</p>
    </sec>
    <sec id="sec-2">
      <title>II. RELATED WORK</title>
      <p>
        When it comes to increasing efficiency of software
programming assignments evaluation, several approaches have been
proposed [
        <xref ref-type="bibr" rid="ref1">1</xref>
        ]–[
        <xref ref-type="bibr" rid="ref5">5</xref>
        ]. Most of these approaches are focusing on
the automated grading of students code by utilising a
backend testing system. In some cases, evaluation is done on the
tests as well in the form of coverage reports and also using
static analysis as a mean to provide code styling conformance
checks. But, most of these approaches are focusing on grading
the final assignment submission of a student. As we discuss
further in this paper it is evident that omitting the process,
used by a student in creating the assignment, may hinder
correct evaluation of obtained knowledge in applying test
design techniques. Consequently, we are proposing the usage
of video assignment submissions as a mean to overcome this
aspect of the students grading.
      </p>
      <p>
        Using videos as a media for student assignments has been
already proven successful [
        <xref ref-type="bibr" rid="ref6">6</xref>
        ], [
        <xref ref-type="bibr" rid="ref7">7</xref>
        ]. Leah, for example,
presented how students of Adelphi University have used video
recording devices and video editing software to perform
assignments related to their motor (physical) skills [
        <xref ref-type="bibr" rid="ref6">6</xref>
        ]. Kearney
and Schuck [
        <xref ref-type="bibr" rid="ref7">7</xref>
        ] discuss in details the nature of student video
projects and its relation to learning. Both students and teachers
in their studies have indicated that video projects of students
do develop authentic learning, referring to students ability to
connect their education to the real world.
      </p>
      <p>However, to the best of our knowledge, we have not seen the
usage of video techniques in the grading of software testing
education assignments. Also, it is important to note here
(a) A new test is added
(b) A new code is added
that we are discussing students video production using video
recording devices (camcorders). In our case, when discussing
video assignments, we are referring to computer desktop video
recording production.</p>
    </sec>
    <sec id="sec-3">
      <title>III. SOFTWARE TESTING ASSIGNMENTS</title>
      <p>Learning outcomes presents an important instrument in
ensuring the quality of a course at the higher level educational
institution. For that reason, it is rather significant to properly
design evaluation assignments and match them to the learning
outcome.</p>
      <p>For example, within the course on Software Verification &amp;
Validation, given at Ma¨lardalen University, we have defined,
among others, the following learning outcome:</p>
      <sec id="sec-3-1">
        <title>Upon fulfilling the course, the student should be able to apply various software testing techniques in development projects.</title>
        <p>The idea is very simple, we expect from our students to know
how to apply test design techniques. However, the problem
arises when we try to evaluate if students have correctly
applied a particular test design technique. Simple because our
assignments are designed as follows:</p>
      </sec>
      <sec id="sec-3-2">
        <title>Create a working Eclipse project for the Triangle problem.You need to provide both the program and the test cases.You have to create tests before the code (Test-driven Development approach).</title>
        <p>By providing us with the Triangle.java and TriangleTest.java
files, we, the teachers, have no ability to validate if students
indeed applied test-driven development approach and what
guidance they used when designing the tests. There is an
evident need to have a more detailed view of the actual
process conducted by students. In the following section, we
discuss further why is this concern important in a test-driven
development education.</p>
      </sec>
      <sec id="sec-3-3">
        <title>A. Grading the TDD process</title>
        <p>
          Test-driven development process introduces an interesting
paradigm for software development [
          <xref ref-type="bibr" rid="ref8">8</xref>
          ]. By enforcing
developers to write tests prior to the code, in small time cycles,
developers are constantly building quality into their code.
However, the process itself is rather sensitive to deviations and
thus should be followed in a rather strict “red-green-refactor”
patter.
        </p>
        <p>• Red: The developer should first write a test and execute
it to see it fails, and thus visualise that there is a problem
which needs to be fixed.
• Green: Afterwards, the developer has to create a minimal
code needed to make the previously failing test pass. Only
once all the tests are passing, the developer can proceed
to the following step.
• Refactor: After few iterations on the code it is important
to refactor and improve the design of code. No new
functionalities are added and existing test cases are ensuring
that the current functionality is not corrupted.</p>
        <p>Although not a direct test design technique, TDD does
represent an important aspect of overall code quality. It is necessary
to have the students exposed to it in order to better appreciate
the effort of proper test design as well as test automation.
However, due to the fact that the TDD concept is new to
students and sometimes even considered rather unorthodox,
we need to make sure that the students are indeed following
it properly.</p>
      </sec>
    </sec>
    <sec id="sec-4">
      <title>IV. VIDEO SUBMISSIONS</title>
      <p>In this section, we are presenting our experience from
applying the video assignment approach to an instance of the
Software Verification &amp; Validation course, given at Ma¨lardalen
University in 2017. At the very beginning of the course, once
the students are introduced to the fundamentals of software
testing and in particular the test case design when using the
test-driven development approach, an assignment was given
to them in the form of a video submission. They were
expected to record their desktop screen with Eclipse1 integrated
development environment being open for the whole duration
until the assignment is completed. The video is then to be
posted on an internal social network at Ma¨lardalen University
(Yammer2) within a group dedicated to students of this course.
Figure 1 depicts a screenshot of one student submission as
an example. Although students did not expect this type of
assignment submission and had not previously done anything
similar to it, they still managed to get the videos posted on
time and with a rather good quality. Many of the solutions
were also correct, but for a few, the teacher had to further
discuss students’ submissions with them.</p>
      <p>At least one of the students made a mistake by writing
first code and then tests. When asked about this, the student
admitted that he completely forgot that the assignment should
be done by following the TDD approach, and rather soon
resubmitted his new video solution, which was correct this time.
However, the most interesting issue that was discussed with
students, was the interpretation of the following TDD rule:</p>
      <sec id="sec-4-1">
        <title>A. Tooling</title>
        <p>An important aspect of the success of video assignments
is the tooling support for it. There exist several commercials,
free or open source solutions for screen recording software. We
did not impose on students the usage of any specific tool but
rather suggested an existing open source solution that works
on most platforms students could use without bringing any
additional cost to them. The tool in question was Open Source
Broadcaster (OBS).3 Although several students did follow the
suggestion to use OBS software, others tried out different
software they sought more suitable for the job.</p>
      </sec>
      <sec id="sec-4-2">
        <title>B. Video Feedback</title>
        <p>
          Providing timely feedback to students assignments is an
important factor in the success of a teaching method. To
the developer has to create a minimal code needed improve efficiency of this process, teachers have applied
to make the previously failing test pass. several rather interesting ideas. Plimmer and Mason proposed
On several occasions, it was noticeable that students are not the usage of a paperless environment for annotation of students
really following this rule and as soon as they have a failing assignments [
          <xref ref-type="bibr" rid="ref9">9</xref>
          ]. Morris and Chikwa [
          <xref ref-type="bibr" rid="ref10">10</xref>
          ] evaluated if using
test, they write a code that goes way beyond the scope of that audio comments instead of a paper based student feedback
test. This results in having written a code that was not fully would increase the overall students’ grades. Their findings
tested. This was discussed in details with students in one of the pointed out no significant difference although students were
follow-up lectures after the assignment deadline. Essentially, positive regarding audio feedback.
their inexperience with TDD has led to making such a mistake. To support students in creating videos, the teacher in the
Still, having video assignments, it made it easier for teachers course has also made a few. Figure 2 picture a screenshot of a
to detect this deviation and address it as early as possible pre-recorded video feedback provided to students. Essentially
such that incorrect application of TDD practice in future is it is a video of a teacher watching and commenting on other
hopefully prevented. students videos. Our idea was that we cannot expect students
to do something that we, the teachers, are not ready to use
ourselves. Video feedback was accepted by students as a rather
positive approach in giving a timely feedback.
        </p>
      </sec>
    </sec>
    <sec id="sec-5">
      <title>V. THREATS TO APPLICABILITY In this section, we present two potential threats to a general applicability of using video assignments in software testing education.</title>
      <p>
        One of the general threats to introducing new types of
assignments at a higher education institution is the phenomenon
of plagiarism. At Ma¨lardalen University there is a
recommendation to design assignments such that they discourage
any possibility of plagiarism appearing. However, as stated
by Leah [
        <xref ref-type="bibr" rid="ref6">6</xref>
        ], students who submitted video assignments had
to actually do them by themselves as they did not had a
possibility to reuse already completed assignment from a
previous year students. We noticed the same pattern in our
study as students could not just copy &amp; paste the code and test
cases from another student pier. Instead they had to write first
test and then the minimum code making that test pass. It would
require a significant skill to be able to decompose an existing
code and test solution into a TDD pattern (reverse engineering
the TDD process). However, this is only applicable to the TDD
related assignments. For any other type of video assignments
plagiarism opportunities do exist and they should be treated
accordingly. One approach would be to record a video camera
stream overlay of the student during the completion of their
task. However, this approach would increase the privacy issue
and it remains unknown what effect it might have on the
quality of the assignment.
      </p>
      <p>Another interesting aspect to discuss regarding general
applicability of video assignments is its usage by blind or
visually impaired users. In previous instances of Software
Verification &amp; Validation courses we have witnessed challenges
with respect to tooling support for blind and visual impaired
persons. For example, one of the assignments includes code
and test analysis using structural (code) coverage techniques.
However, most tools for coverage provides colour-coded
information regarding the state of a singe statement and/or branch.
This rendered to be completely useless for some blind students
that we had in a course. Indeed, this aspect has to be further
investigated and better understand to what degree it is possible
for blind and visual impaired users to perform desktop video
recording.</p>
    </sec>
    <sec id="sec-6">
      <title>VI. CONCLUSION AND FUTURE WORK</title>
      <p>Homework assignments are classified as active learning
type of approach to knowledge building process. This is where
students have to actively work on solving a dedicated practical
problem given to them. However, they have to do that alone
with no immediate help from the teacher or other peers in the
course. In order to truly evaluate if the homework assignment
has been conducted correctly, the teacher needs to see the
process of creating it, rather than focusing on the actual
solution or its outcome.</p>
      <p>In this paper, we have presented an approach of using video
assignments in grading students submissions, especially within
the software testing education. By having a video submission
from students, the teachers can potentially better utilise their
time when evaluating if a solution for a given assignment
fulfils the learning outcome of the course. Within the course of
Software Verification and Validation at Ma¨lardalen University,
this approach was tested by applying it to the TDD assignment.
As a result, it was noticed that students to some extent do not
follow the rules of TDD and could potentially accommodate
the wrong process for using it. With the help of video
assignments, this was noticed early in the course and students
had the time to discuss and reflect on the mistakes done.</p>
      <p>For the next instance of the course, the plan is to integrate
video assignments within the learning platform itself rather
than using social platform for it. In addition, a short
introductory video could be made for students on how to create
their own videos and motivate why this way of working is
beneficial for students as well as teachers.</p>
    </sec>
    <sec id="sec-7">
      <title>ACKNOWLEDGEMENT</title>
      <p>This work was supported by the Swedish Knowledge Foundation
(KKS) through projects FuturE and PROMPT - Professional Master’s
in Software Engineering. The author would like to thanks to the
colleagues and students at Ma¨lardalen University for their inspiration
and support.</p>
    </sec>
  </body>
  <back>
    <ref-list>
      <ref id="ref1">
        <mixed-citation>
          [1]
          <string-name>
            <given-names>S.</given-names>
            <surname>Elbaum</surname>
          </string-name>
          ,
          <string-name>
            <given-names>S.</given-names>
            <surname>Person</surname>
          </string-name>
          ,
          <string-name>
            <given-names>J.</given-names>
            <surname>Dokulil</surname>
          </string-name>
          , and
          <string-name>
            <given-names>M.</given-names>
            <surname>Jorde</surname>
          </string-name>
          , “
          <article-title>Bug hunt: Making early software testing lessons engaging and affordable</article-title>
          ,”
          <source>in Proceedings of the 29th International Conference on Software Engineering</source>
          , ser.
          <source>ICSE '07</source>
          . Washington, DC, USA: IEEE Computer Society,
          <year>2007</year>
          , pp.
          <fpage>688</fpage>
          -
          <lpage>697</lpage>
          .
        </mixed-citation>
      </ref>
      <ref id="ref2">
        <mixed-citation>
          [2]
          <string-name>
            <given-names>J.</given-names>
            <surname>Spacco</surname>
          </string-name>
          and
          <string-name>
            <given-names>W.</given-names>
            <surname>Pugh</surname>
          </string-name>
          , “
          <article-title>Helping students appreciate test-driven development (tdd),” in Companion to the 21st ACM SIGPLAN Symposium on Object-oriented Programming Systems, Languages, and Applications, ser</article-title>
          .
          <source>OOPSLA '06</source>
          . New York, NY, USA: ACM,
          <year>2006</year>
          , pp.
          <fpage>907</fpage>
          -
          <lpage>913</lpage>
          .
        </mixed-citation>
      </ref>
      <ref id="ref3">
        <mixed-citation>
          [3]
          <string-name>
            <given-names>S. H.</given-names>
            <surname>Edwards</surname>
          </string-name>
          and
          <string-name>
            <given-names>M. A.</given-names>
            <surname>Perez-Quinones</surname>
          </string-name>
          , “
          <article-title>Web-cat: Automatically grading programming assignments,” in Proceedings of the 13th Annual Conference on Innovation and Technology in Computer Science Education, ser</article-title>
          .
          <source>ITiCSE '08</source>
          . New York, NY, USA: ACM,
          <year>2008</year>
          , pp.
          <fpage>328</fpage>
          -
          <lpage>328</lpage>
          .
        </mixed-citation>
      </ref>
      <ref id="ref4">
        <mixed-citation>
          [4]
          <string-name>
            <given-names>A.</given-names>
            <surname>Allowatt</surname>
          </string-name>
          and
          <string-name>
            <given-names>S. H.</given-names>
            <surname>Edwards</surname>
          </string-name>
          , “
          <article-title>Ide support for test-driven development and automated grading in both java</article-title>
          and c++,” in
          <source>Proceedings of the 2005 OOPSLA Workshop on Eclipse Technology eXchange, ser. eclipse '05</source>
          . New York, NY, USA: ACM,
          <year>2005</year>
          , pp.
          <fpage>100</fpage>
          -
          <lpage>104</lpage>
          .
        </mixed-citation>
      </ref>
      <ref id="ref5">
        <mixed-citation>
          [5]
          <string-name>
            <given-names>I.</given-names>
            <surname>Hernn-Losada</surname>
          </string-name>
          ,
          <string-name>
            <given-names>C.</given-names>
            <surname>Pareja-Flores</surname>
          </string-name>
          ,
          <article-title>and</article-title>
          <string-name>
            <surname>J. .</surname>
          </string-name>
          <article-title>Velzquez-Iturbide, “Testingbased automatic grading: A proposal from bloom's taxonomy</article-title>
          ,” in 2008 Eighth IEEE International Conference on Advanced Learning Technologies,
          <year>July 2008</year>
          , pp.
          <fpage>847</fpage>
          -
          <lpage>849</lpage>
          .
        </mixed-citation>
      </ref>
      <ref id="ref6">
        <mixed-citation>
          [6]
          <string-name>
            <given-names>L. H.</given-names>
            <surname>Fiorentino</surname>
          </string-name>
          , “
          <article-title>Digital video assignments: Focusing a new lens on teacher preparation programs</article-title>
          ,
          <source>” Journal of Physical Education, Recreation &amp; Dance</source>
          , vol.
          <volume>75</volume>
          , no.
          <issue>5</issue>
          , pp.
          <fpage>47</fpage>
          -
          <lpage>54</lpage>
          ,
          <year>2004</year>
          .
        </mixed-citation>
      </ref>
      <ref id="ref7">
        <mixed-citation>
          [7]
          <string-name>
            <given-names>M.</given-names>
            <surname>Kearney</surname>
          </string-name>
          and
          <string-name>
            <given-names>S.</given-names>
            <surname>Schuck</surname>
          </string-name>
          , “
          <article-title>Spotlight on authentic learning: Student developed digital video projects</article-title>
          ,”
          <source>Australasian Journal of Educational Technology</source>
          , vol.
          <volume>22</volume>
          , no.
          <issue>2</issue>
          , pp.
          <fpage>189</fpage>
          -
          <lpage>208</lpage>
          ,
          <year>2006</year>
          .
        </mixed-citation>
      </ref>
      <ref id="ref8">
        <mixed-citation>
          [8]
          <string-name>
            <given-names>K.</given-names>
            <surname>Beck</surname>
          </string-name>
          , Test Driven Development. By
          <string-name>
            <surname>Example (Addison-Wesley</surname>
            <given-names>Signature).</given-names>
          </string-name>
          <string-name>
            <surname>Addison-Wesley</surname>
            <given-names>Longman</given-names>
          </string-name>
          , Amsterdam,
          <year>2002</year>
          .
        </mixed-citation>
      </ref>
      <ref id="ref9">
        <mixed-citation>
          [9]
          <string-name>
            <given-names>B.</given-names>
            <surname>Plimmer</surname>
          </string-name>
          and
          <string-name>
            <given-names>P.</given-names>
            <surname>Mason</surname>
          </string-name>
          , “
          <article-title>A pen-based paperless environment for annotating and marking student assignments,” in Proceedings of the 7th Australasian User Interface Conference</article-title>
          - Volume
          <volume>50</volume>
          ,
          <article-title>ser</article-title>
          .
          <source>AUIC '06</source>
          .
          <string-name>
            <surname>Darlinghurst</surname>
          </string-name>
          , Australia, Australia: Australian Computer Society, Inc.,
          <year>2006</year>
          , pp.
          <fpage>37</fpage>
          -
          <lpage>44</lpage>
          .
        </mixed-citation>
      </ref>
      <ref id="ref10">
        <mixed-citation>
          [10]
          <string-name>
            <given-names>C.</given-names>
            <surname>Morris</surname>
          </string-name>
          and G. Chikwa, “
          <article-title>Audio versus written feedback: Exploring learners? preference and the impact of feedback format on students? academic performance,” Active Learning in Higher Education</article-title>
          , vol.
          <volume>17</volume>
          , no.
          <issue>2</issue>
          , pp.
          <fpage>125</fpage>
          -
          <lpage>137</lpage>
          ,
          <year>2016</year>
          .
        </mixed-citation>
      </ref>
    </ref-list>
  </back>
</article>