You are on page 1of 3

MOD002702 SOFTWARE IMPLEMENTATION 2021-22

SPRING TRIMESTER
MULTIPHASED COURSEWORK

PORTFOLIO (15%)
During the trimester, some weekly practical classes will include a programming exercise
whose solutions should be archived into a portfolio and submitted along with the main
assignment at the end of the trimester. These exercises can be worked on in scheduled
practical class time, and students can support/help each other provided that no actual code is
exchanged between students, whether embedded in an email or attached as a separate file. In
contrast verbal discussion and communication by free text grammatical social media is
encouraged. In the portfolio, each successful exercise solution is worth one mark. For
example if 6 exercises are specified for assessment but only 4 are successful, you will be
awarded 4/6 th’s of 15% i.e 10/15 towards the final mark.

MAIN ASSIGNMENT (85%)


A TEXT FILE SEARCH APPLICATION

This assignment concerns searching through use of a data structure.

Write a console-based program that on execution reads a text file specified by the user, of any
length and containing English prose or literature, and stores the words in a suitable data
structure (a simple structure would be an array of words; a complex and more efficient
structure would be a binary search tree of words). Options should then be presented by which
the user can search for a word specifed by the user and which will return the frequency of
occurrence. The search criteria could include the ’*’ symbol as a wildcard to represent the
unknown beginning or ending of a word, or as a direct replacement for a character. For
example, if the tree contained the words ‘shape’, ‘tape’ and ‘hate’, then queried string ‘*ape’
would return ‘shape’ and ‘tape’, whilst ‘s*hape’ could only return ‘shape’. Other options can
be implemented such as searches based on word frequency or options to display frequency
information.

The complexity and available credit for this assignment is very dependent on which
requirements you implement and how they are implemented. The assignment can be made
easier by using a simple data structure, limiting text input size, omitting or limiting the
wildcard functionality, and limiting the type of search. As is usually the case, there will be a
balance between difficulty and what you can get done in the time you have available.

Optionally, you may demo your program to the tutor once at some point in the last three
weeks of the trimester, either to get advice on subsequent development or to better
communicate the functionality of the program to the tutor and hence aid the marking process.
This demo session if used will not be marked.

Even if a program lacks a requirement, or even does not compile (!) you will still get credit
based on what you have done including the documentation.
Assessment
Structure your submission with a folder named after your sid e.g. ‘sid1234567’ This folder
should itself contain two folders, one called ‘Portfolio’ and the other called ‘TextSearchApp’
or similar. The portfolio should contain one folder per assessed exercise, each containing two
files, the C# source code (.cs) and the C# executable (.exe). The main assignment folder
should contain;

1. Source (.cs) and compiled code (.exe) files, and any other relevant files to run the
program (eg example .txt files).
2. A pdf or word file document report to include>
a) 400 word evaluation of the search tool (for example, discussion of classes and/or
data structure(s); strengths and limitations of the implementation).
b) A class diagram of your implementation.
c) A Test Plan describing five tests of your choice and a table of five Test Results.
d) A copy of the source code content reproduced in the word/pdf file as Appendix 1,
suitably formatted.
e) Instructions for running the program in an Appendix 2.

The submission, ‘sid1234567’ should then be compressed into a single zip file e.g.
‘sid1234567.zip’ and submitted by 2pm on Friday 10th December 2021. To minimize the
size of the file submitted avoid submitting Visual Studio project files (i.e only .cs and .exe
program files should be submitted, besides the word doc/pdf file constituting the report.

The main assignment mark will be an amalgamation of four equally weighted components.
See the separate mark scheme/ mark sheet for details on how this assignment will be marked.
Note that even if your main assignment program is not fully functional (or even will not
compile) you can still get credit for the program design, coding and evaluation. Feedback will
be available in 2 ways a) via an email sent to each student which will contain personalised
content, and b) via e-vision accessible by students listing percentage, grade and outcome
(subject to assessment board rules).

Reassessment
If you are unfortunate enough to require a reassessment (normally as second attempt but
possibly as a first attempt), you should re-submit the Text Search assignment by the standard
due date for Trimester 1 resubmissions and your mark out of 100% will be calculated on this
new submission only (usually the system will cap this at 40%). Note there will be NO
portfolio component to submit or considered irrespective of how well they were undertaken at
the first attempt. You are encouraged to explore a different approach to achieving a solution
to the main assignment compared to the first attempt.
MOD002702 feedback mark sheet 2021-22

In-class Overall Overall


exercises Main
010 module
(not used in Assignment
resubmission)
mark result

OO design and
Student /15 Functionality data structure Documentation Comment % Grade /85 % Grade
implementation

Choice of user- Each


Weighted 0.1 Presentation.
Reflects how well written classes component
Code clarity and
the program and their is assigned
Eg if 5 layout.
works (eg methods. Word a grade (F,
exercises are Correctness of F (<40);
understandable tokenization and D, C, B, A)
successfully class diagram. Personalized comments Main Overall D (40-49);
interface; file type of data and each Weighted
demo’d out of Test Plan and specific to student assignment weighted C (50-59);
access; word structure used. maps to a 0.9
9 then the Results. submission. grade mark B (60 - 69);
search flexibility Choice and mark (0-
mark out of Evaluation of A (70+)
and wild card implementation 100) from
10 is> approach
sophistication; of search which the
5/9 of 15 = including success
user choices). algorithm and average is
8.3 and limitations.
matching. taken.

Sid Final Final


Mark Grade Grade Grade Comment Mark Grade Mark
Number Mark Grade

You might also like