Biomedical Engineering Reference
In-Depth Information
errors in all the lines following the erroneous line. In order to remove prop-
agated errors, in this framework, the compiler output is given as input to a
small program and it points out all the redundant errors reported. Some marks
are given to the student if the actual errors reported are less.
(b) Unit testing stage: After the program is successfully compiled, it needs to be
tested for functionality by performing unit testing of the programs. In unit
testing, it is checked that whether all the modules are working as desired or
not. It is performed by white box testing of the student program. The test cases
are provided by the examiner. The test cases are run on model answer to
nd
the expected output. Then, the student program is evaluated for the same test
cases. If there is a match between the expected output and student program
output, it is a success. For ensuring the success of this functionality, the
signatures (number of arguments and return value) of student functional units
must match the model program.
(c) Metrics calculation stage: After the program is tested for correctness, its
complexity and style need to be evaluated. The lines of Code (KLOC), lines of
Comment, McCabe
s cyclomatic complexity, and number of Modules are
calculated. The metric values of student program are matched with that of
model program. If the number of lines of code is more in student program,
then it is negative as lesser lines are solving the problem. If lines of comment
are less, then it is negative as program is not self-explanatory. If number of
modules is less, then coupling and cohesion are not ensured. If McCabe
'
s
cyclomatic complexity is more, then program is unnecessarily made complex.
(d) Semantic similarity stage: The semantic similarity of the student program to
the standard program needs to be established. This is done by creating system
dependency graphs (SDG) of student program and standard program. Both the
graphs are compared for similarity. Exact matches in the graph are not
required. The number of modules,
'
their internal nodes, and data
fl
ow are
measured.
3.1 Integration of Evaluation Stages into Evaluation
Framework
The diagram showing the different stages of framework is given in Fig. 1 . The
stages of evaluation mentioned above are integrated using Java program into one
framework. The integration Java program invokes several
tools and libraries,
captures their output and interprets it.
The total marks to be awarded for the practical question can be given based on
the four stages. The suggested evaluation strategy can be as follows. The
rst part is
given to the student if the program compiles successfully and passes the functional
Search WWH ::




Custom Search