1
NTU
Nottingham Trent
University
School of Science and Technology
COURSEWORK ASSESSMENT SPECIFICATION
Details of Module and Team
What Learning Outcomes are assessed?
What are my Deadlines and how much does this
assessment contribute to my Module Grade?
What am I required to do in the assessment?
What are my assessment criteria? (What do I have
to achieve for each grade?)
Can I get formative feedback before submitting ?
If so, how?
What extra support could I look for myself?
How and when do I submit this assessment?
How and when will I get summative feedback?
What skills might this work evidence to
employers?
Module Code
SOFT10121
Nottingham Trent
NTU University 2
Module Title
Module Leader
Module Team
Coursework Title
Module Learning outcomes
assessed
Apprentice Learning outcomes
assessed
Contribution to element
Date set
Deadline for submissions
Method of Submission
Software Project and Report
All Knowledge and skills outcomes
N/A
100% of overall module mark
Report, code and recorded video demo
to be submitted via DROPBOX
Deadline for Feedback
Method of Feedback
NOW Dropbox
Work handed in up to five working days late will be given a maximum
Grade of Low Third whilst work that arrives more than five working days
will be given a mark of zero.
Work will only be accepted beyond the five working day deadline if
satisfactory evidence, for example, an NEC is provided.
https://www.ntu.ac.uk/studenthub/my-course/student-handbook/submit-a-
notification-of-extenuating-circumstances
The University views plagiarism and collusion as serious academic
irregularities and there are a number of different penalties which may be
applied to such offences. The Student Handbook has a section on
Academic Irregularities, which outlines the penalties and states that
plagiarism includes:
'The incorporation of material (including text, graph, diagrams,
videos etc.) derived from the work (published or unpublished) of
another, by unacknowledged quotation, paraphrased imitation or other
device in any work submitted for progression towards or for the
completion of an award, which in any way suggests that it is the student's
own original work. Such work may include printed material in textbooks,
journals and material accessible electronically for example from web
pages.'
Whereas collusion includes:
“Unauthorised and unacknowledged copying or use of material prepared
by another person for use in submitted work. This may be with or without
their consent or agreement to the copying or use of their work.”
If copied with the agreement of the other candidate both parties are
considered guilty of Academic Irregularity.
Please remember submitting portions of work already assessed is Self-
Nottingham Trent
NTU University 3
Plagiarism and is also a serious academic irregularity.
Penalties for Academic irregularities range from capped or zero grades for
elements of modules, to dismissal from the course and termination of
studies.
To ensure that you are not accused of plagiarism, look at the sections
on Plagiarism Support and Turnitin support.
Chat GPT and other Al-powered language models
It is important to note when using any Al platform that they generate the
most common responses to questions, not necessarily the correct ones.
They also fabricate evidence.
The material they produce is not your own words. Assessments require
you answer questions giving your own view and in your own words. The
outputs from Chat GPT do not provide that.
By presenting such material as your own words you are violating
Academic Integrity policy, a matter that NTU takes very
seriously.
The skills you develop during your time with us allow you to interrogate
material and evaluate it, important skills in all careers. Chat GPT does
not allow you to develop these.
Nottingham Trent
NTU University I. Assessment Requirements
You will design and implement a program in Python based on either one of the given
scenarios or on an idea proposed by you and agreed with the lab tutor. If the latter is
the case, the system you will produce would have to be of sufficient complexity.
The report must be at least 8 pages and no more than 15 pages maximum in length
(font to be used is Verdana, 11 point). If you include either a front cover sheet, list of
tables, or reference / bibliography pages these will not count towards the size of the
report. Only pages dedicated to the following sections will count towards the 8 to 15-
page limit:
1. Introduction/Design (no more than 6 pages):
Your design should include:
i.
The problem statement as to what your system is intending to achieve.
ii.
iii.
iv.
What key features your system is going to provide including those that go
beyond what was asked for in the scenario.
The design of what your system is going to do through the use of flow charts or
pseudo code detailing the complexity of the system (i.e., the algorithms that
you will be implementing). You are required to explain your decisions for your
choices in your design.
How you intend to test the system to make sure it works correctly. You must
describe a number of tests and determine what the outcome of the tests will
be. These tests will then be used to show that your system is working correctly
in section 3.
2. Implementation (no more than 6 pages):
You are required to describe your implementation. To do this, short listings of code
can be included within this section, but the code must be fully described, and you
must justify why it should be discussed. The description must detail the complexity
and/or challenges that you encountered when writing the code (for example what
problems you encountered and how you solved them). Including program listings
which does not satisfy the previous will not be acceptable (for example, no large
listings of code will be acceptable).
You are required to describe what data structures are used within the system and why
they were chosen. These details can be integrated into the general discussion in
section 2.
3. Testing (no more than 3 pages):
You must discuss and detail how the system satisfies the testing procedure described
in section 1.4. This requires you to show, by referencing from section 1.4:
i. What the test is
ii.
The expected result
iii.
The actual result
You must produce a working program with all source code, including any additional
NTU
Nottingham Trent
University 5
files that are required. Any elements or features of the system from other sources will
need to be fully attributed in both the program code and report. Failure to do so will
result in an Academic Misconduct Investigation for plagiarism. This can apply to (but
not limited to) code, algorithms or design. If you are in doubt, discuss the matter with
the lab tutor and/or consult the student handbook for more information.
4. Recorded video demo
When submitting your report, include a recorded video of between 5 to 10 minutes
showcasing the functionality of your working system for the chosen task. Ensure your
voice is audible in the video and upload the recorded demo to Dropbox.
You must submit the following:
1. The report as detailed above in electronic format only. This accounts for 40% of
the grade.
2. All source code (including any additional files that are required) to be submitted
electronically. This accounts for 60% of the grade.
3. A statement of ownership which states that this is your own work and provides
references to sources if elements of your system come from other works. For
more information or if you are in doubt, you must discuss this with the lab
tutor.
4. A recorded video demo showcasing the functionality of your working system for
the chosen task. Ensure your voice is audible in the video. (5 to 10 minutes)
II. Assessment Scenario/problem
You must choose one of the following scenarios:
1. A network-based chat server and client. The server must allow multiple clients
from remote machines to connect simultaneously and allow parallel conversations
between different people on different clients, prioritizing the confidentiality and
integrity of communication. You should implement authentication mechanisms by
incorporating features to mitigate potential security threats such as unauthorized
access and malicious activities within the network.
2. DNS Server. Imagine you are a cybersecurity specialist who needs to create a DNS
server for a client. Your task is to program and simulate the server, which should be
able to handle multiple clients and resolve domain names to their corresponding IP
addresses. Prioritize security by implementing measures to protect against potential
vulnerabilities and attacks. Establish a secure protocol and messaging system to
facilitate communication with the clients, ensuring the confidentiality and integrity of
data exchange. Integrate mechanisms for storing addresses and IP addresses
securely, either through hard-coding or by loading them from a file.
The design and implementation of the DNS server should adhere to cybersecurity best
practices, addressing concerns such as data integrity, confidentiality, and resilience
against potential malicious activities. The implementation should include robust
authentication mechanisms to safeguard the communication channels and prevent
unauthorized access to information.
You are required to research how DNS works (the
Nottingham Trent
NTU University