Uploaded by Zoya Aksk

Object Oriented Software Development Assignment Brief

advertisement
BS2202: Object Oriented Software
Development
Summative Assignment Brief
Module Leader: Dr Claire Ancient
Semester 2, Academic Year 2022-23
This module is assessed by the submission of a portfolio. A portfolio achieves several things. It is:
1.
a record of your learning progress throughout the module
2.
a task to achieve which requires you to engage with the course materials over the 12 weeks
3.
your assessment for this course.
There is one summative assessment for this module:
Module Title:
Object Oriented Software Development
Module Code:
BS2202
Module Leader:
Claire Ancient
Module Tutors:
Claire Ancient
Pireh Pirzada
Tania Tonni
Level:
5
Assessment Title:
Software Development Portfolio - Developing a Library System
Assessment Type:
Individual Portfolio
Restrictions on Time/Length:
2,000 words maximum, not including the code you write
Individual/Group:
Individual
Assessment Weighting:
100%
Issue Date:
31st January 2023
Hand In Date:
Monday 15th May 2023 by 3.30pm (report and source code)
Tuesday 16th May; Thursday 18th May; Tuesday 23rd May;
and Thursday 25th May 2023 (demonstrations, via Teams)
Anonymous Marking:
This assignment will not be marked anonymously in line with
the University of Winchester Anonymous Marking Policy.
Please see your programme handbook for more information.
Planned Feedback Date:
15 working days after submission deadline
Mode of Submission:
Online submission
File Format of Submission:
.zip file containing your written report and all relevant files
(including at least the Java files)
Number of copies to be submitted:
1 copy
This document contains the following information:
1.
2.
3.
4.
Assignment Brief
Summative Assignment
Formative Assignments
Marking Scheme
BS2202: Object Oriented Software Development
Page 2 of 13
Module Leader: Dr Claire Ancient
A Note on Word Counts
This assignment should be 2,000 words (+/- 10%). The word count should be shown on the front of your
assignment. Words in Java files, diagrams, tables or as part of an appendix do not count.
There is no penalty for submitting fewer words than the word count minus 10% (e.g., less than 1,800 words for
assignments with a word count of 2,000 words +/-10%). However, it is doubtful whether you will be able to
complete the assignment in sufficient depth, and this is likely to affect your mark.
If your assignment exceeds the word count by more than 10%, the marking tutor will stop marking at this point
and the excess content will not be considered, which is also likely to affect your mark.
1. Assignment Brief
For this module, you are being asked to develop a library loans system. You can choose what is being loaned at the
library – it doesn’t have to be books and DVDs; it can be any other items you want, as long as they are loaned and
returned. They system you are developing will be used by employees of the library only and not by members of the
public.
Whilst you can choose the scenario, but it must include the following features:
 More than one type of item to be loaned
 More than one option for each of the items (for example, if you are doing books, you might find that there
are large print versions, ebooks, or normal print books)
 Ability to see current number of each item which is available for loan
 Ability to loan items, including tracking of who has loaned the items
 Ability to return items, together with providing details of fine for overdue items
 Ability to print information about a single item to a file. You should include the following information:
o Details about the item
o Number of copies available
o Number of copies on loan
o Earliest return date for any items on loan
 Ability to search for an item
 A login system, which includes:
o Different account types – standard and administrator
o Ability to register with the system – subject to administrator approval
 One other feature which is relevant, but not included here – this can be whatever you want, as long as it is
an appropriate addition to a library loans system.
Within your system, the following programming concepts must be included:
 Object-oriented design
 Inheritance
 A database
 A Graphical User Interface (GUI) which utilises JavaFX or AWT/Swing
 At least 1 image for each item – displaying what the item is
You might want to consider a system which is related to your workplace (if possible). However, in recognition that
this may not be possible for everyone, it will not be a requirement of this assignment.
Before commencing work on your assignment, you MUST receive agreement to continue from the module leader.
This will involve you putting forward a project proposal (a template for which can be found on Canvas), which will be
reviewed for appropriateness. There will be a submission box for your proposal on Canvas.
Throughout this assignment, your module leader will act as the client. Therefore, if you have any queries which you
believe would be resolved through discussion with the client, you will be able to speak to the module leader.
BS2202: Object Oriented Software Development
Page 3 of 13
Module Leader: Dr Claire Ancient
2. Summative Assignment
The summative assignment for this module is a portfolio.
The portfolio must include the following three elements:
1. Project Documentation (worth 40 marks)
2. Source Code (worth 45 marks)
3. Project Demonstration (worth 15 marks)
Both the project documentation and source code must be submitted to Canvas in a single .zip file.
In the section 4, you will see a further breakdown of how your submission will be marked.
2.1. Project Documentation
Your project documentation must include four elements:
1. Project scope and client requirements/user stories
This section will need to include an introduction to the project and the chosen scenario. You will also be
expected to consider the possible requirements or user stories the client will have for your system –
together with a discussion of how you would (in an ideal environment) gather the requirements or user
stories. You must not engage in any requirement or user story gathering activities.
You will need to include:
 The requirements listed above (applied to your specific case study) – do not just copy and paste the
requirements, especially if you are using user stories
 Additional requirements/user stories which may not have been covered by the assignment brief
(applied to your specific case study)
Your module leader will act as the client if you want to discuss possible requirements.
2. User interface diagrams
You will need to include wireframe versions of your user interface. Each screen should be represented as a
wireframe. In addition to the diagrams, you will need to consider the accessibility and usability of your
interface, especially in relation to Sustainable Development Goal 10: Reduced Inequalities.
3. Class diagrams
You will need to use UML to demonstrate how your classes interact with each other. In addition, you will
want to include a database design diagram. It would also be expected that you will provide some additional
information relating to the diagrams. In the class diagram, make sure that you demonstrate good use of
object-oriented programming principles and evidence of inheritance. This section should also include a
discussion of the relevant design patterns you have incorporated within your design. If you have not
included any design patterns, you must discuss your justification for this decision.
4. Testing documentation
Your testing documentation will have two elements:
 Testing plan
 Evidence of testing results
It would be expected that your testing plan covers data validation to ensure that your inputs and outputs are
both correct. Additionally, when a test fails, it is expected that you will demonstrate how you resolved the
problem as well as the evidence of re-testing to ensure accuracy.
2.2. Source Code
For this assignment, you will need to submit your source code. You will be required to submit your .java files. You
must also include a README file which explains to the marker how to implement your program so that the
functionality can be verified. The source code must implement object-oriented programming techniques and must
be in the Java programming language – no other languages will be accepted.
BS2202: Object Oriented Software Development
Page 4 of 13
Module Leader: Dr Claire Ancient
When developing your program, you need to consider the quality of the code you are producing. The code quality of
your submission will be considered during the marking process.
2.3. Project Demonstration
The final part of your summative assignment will be to present your system to an audience, through the use of a live
demonstration. The demonstration should include: an overview of the system itself (including the client
requirements) and all the features of the system. You should assume that the audience do not have any technical
knowledge, so your presentation should be appropriate for the layman. You will lose marks if you present a
demonstration which contains too much information which would not be understood by a non-technical audience.
The presentation can be in any format you want – PowerPoint, Poster, Prezi, etc. However, there are a couple of
conditions:
1. It must be a maximum of 10-minutes’ long
2. It must demonstrate the system as a whole as a live demonstration
3. You must be able to answer questions at the end (the time for which is not included within the 10-minute
time limit)
3. Formative Assignments
For this module, there are three formative assignments. All formative assignments are Canvas submissions.
1. Project Proposal (Deadline: Monday 13th February 2023 at 3.30pm)
The project proposal is a key feature of this assignment. Your module leader will use this information to
ensure that your chosen scenario will meet the requirements of the assignment. You will need to submit
your Project Proposal on Canvas and receive feedback BEFORE commencing any development work – we
don’t want you to start your project then find that you need to revisit your work to ensure alignment with
the module outcomes. Feedback for all the project proposals submitted will be provided after the deadline
for the first formative. You will find a template for the project proposal on Canvas – you can adapt the
template if you want, but it must include the same information.
2. Class Diagram (Deadline: Monday 27th February 2023 at 3:30pm)
In the second formative submission, you will be submitting your proposed class diagram for your project,
together with a discussion of the design decisions you have made when constructing the diagram. In the first
sessions of week commencing 27th February 2023, you will be giving and receiving feedback on the class
diagrams of your peers. For this reason, please do not include your name or any other identifying features
on your submissions. Your tutor will give each submission an identifying number which can be used by your
peers to provide feedback, and then collate the responses and add the comments to your Canvas
submission.
3. Interface Design (Deadline: Monday 20th March 2023 at 3:30pm)
For this formative submission, you will need to submit a word document on Canvas which contains images of
your wireframes, together with a discussion of the design decisions you have made. This needs to relate to
UN SDG 10, as well as theory related to user interface design. In the first sessions of week commencing 20th
March 2023, you will be giving and receiving feedback on the wireframes of your peers. For this reason,
please do not include your name or any other identifying features on your submissions. Your tutor will give
each submission an identifying number which can be used by your peers to provide feedback, and then
collate the responses and add the comments to your Canvas submission.
None of these formative assignments are considered optional – you must engage in all activities. They have been
designed to support your summative assignment.
BS2202: Object Oriented Software Development
Page 5 of 13
Module Leader: Dr Claire Ancient
4. University of Winchester Assessment Criteria
STATEMENT OF LEVEL: 5 (based on sector frameworks and benchmarks)
At this level students are expected to generate ideas through the application and analysis of concepts at an abstract
level and outside the original context of enquiry, with a command of specialised skills and the formulation of
responses to well defined and abstract problems; use main methods of enquiry in the subject to analyse and
evaluate information and solve problems; exercise significant judgement across a broad range of functions; and
accept responsibility for determining and achieving personal and/or group outcomes. They should be able to
evidence knowledge and understanding of well-established principles of their area of study and their development;
understand the limits of their knowledge and how this influences their analyses. Can communicate arguments and
analysis in variety of forms to specialist and non-specialist audiences.
BS2202: Object Oriented Software Development
Page 6 of 13
Module Leader: Dr Claire Ancient
GRADING DESCRIPTOR LEVEL 5 (wording in boxes A-F is to give examples of standards and evidence and should be used as a guide) (The 'exceptional' category indicates work that is
exceptional for this level of study)
Assessment Criteria
(encompassing some
or all of the
elements below)
A*
80-100%
A
70-79
B
60-69
Research
and
Enquiry
Ability to identify
relevant sources,
evaluate, use
materials and
compare data in a
range of forms and
from diverse sources
Exceptional:
exploration and use
of significant range
of relevant
resources (e.g.
extensive reading)
exceeds
expectations.
Outstanding ability
to compare &
evaluate materials
using a range of
techniques while
demonstrating acute
awareness of
limitations and
contradictions in
data.
Excellent:
substantial and
appropriate use of
range of relevant
resources; widely
read. Robust ability
to compare and
evaluate materials
using a range of
techniques. Student
is well aware of, and
can respond
insightfully to,
limitations and
contradictions in
data.
Academic Skills
academic
conventions,
structures,
referencing, ability to
respond to brief,
according to subject
requirements,
communication and
presentation
Exceptional:
fulfilment of
assessment brief has
exceeded all
expectations with
regard to structure,
content, style,
argument,
conventions.
BS2202: Object Oriented Software Development
Excellent: fulfilment
of assessment brief
with regard to
structure, content,
style, argument,
conventions is of a
high calibre.
C
50-59
D
40-49
F
30-39
F
1-29
Very Good:
thorough use of
appropriate relevant
resources, such as
literature.
Consistently able to
compare and
evaluate materials
using a range of
techniques. Student
demonstrates
awareness of and
responds to
limitations and
contradictions in
data.
Good: appropriate
use of relevant
resources, such as
literature.
Consistently able to
compare and
evaluate materials
using appropriate
techniques. Student
refers to limitations
and contradictions
in data.
Satisfactory:
sufficient relevant
resources, such as
literature, are drawn
on. Student
demonstrates ability
to compare and
evaluate materials
using appropriate
techniques. Student
can identify
differences in
literature /
theoretical positions
/ source materials.
Unsatisfactory:
insufficient relevant
resources, such as
literature, are drawn
on. Ability to
compared and
evaluate materials
using appropriate
techniques is not
adequately
demonstrated.
Poor: student has
done little or no
research and cannot
demonstrate key
aspects of research
and enquiry
required by this
module and at this
level.
Very Good:
fulfilment of
assessment brief has
seen all relevant
academic skills very
well applied.
Good: fulfilment of
assessment brief has
seen most relevant
academic skills well
applied.
Satisfactory:
fulfilment of
assessment brief has
seen sufficient
evidence of some
relevant academic
skills.
Page 7 of 13
Unsatisfactory: the
relevant academic
skills have been
inadequately
demonstrated.
Notable failure to
address assessment
task
Poor: little to no
evidence of ability to
employ relevant
academic skills. May
have failed to
address assessment
task completely
Module Leader: Dr Claire Ancient
Assessment Criteria
(encompassing some
or all of the
elements below)
Subject Knowledge
and Understanding
Intellectual
engagement, grasp
of concepts,
principles, key tenets
of subject, theory,
context, limitations
Applied and Practical
Skills Technical /
professional /
performative / field
or lab based / digital
etc. May include
discipline specific
skills such as creative
writing
A*
80-100%
Exceptional:
knowledge, critical
evaluation, synthesis
of ideas, problemsolving, grasp and
application of theory
all exceed
expectations for task
at this level.
Significant analytical
capability,
conceptual
understanding is
highly developed
showing deep
insight and grasp of
wider
issues/context. The
work is highly
advanced, and may
also be highly
original and/or
imaginative.
Exceptional:
management and
application of, and
prowess / dexterity
/ capability with
relevant skills
exceeds
expectations for the
task at this level.
BS2202: Object Oriented Software Development
A
70-79
B
60-69
C
50-59
D
40-49
F
30-39
F
1-29
Excellent:
knowledge, critical
evaluation,
synthesis of ideas,
problem-solving,
grasp and
application of theory
are all at an
extremely high level.
Significant analytical
capability,
conceptual
understanding is
highly developed
showing deep
insight and grasp of
wider
issues/context. The
work is advanced,
and may also be
original and/or
imaginative
Very Good:
knowledge, critical
evaluation, synthesis
of ideas, problemsolving, grasp and
application of theory
are strong and
consistent.
Analytical capability
is well evidenced
and conceptual
understanding
shows insight and
grasp of wider
issues/context.
Good: clear
evidence of
knowledge, ability to
evaluate, synthesise
ideas, solve
problems,
understand and
apply theory. Clear
evidence of analysis
and conceptual
understanding.
Satisfactory:
sufficient evidence
of knowledge, ability
to evaluate,
synthesise ideas,
solve problems,
understand and
apply theory.
Evidence of analysis
and conceptual
understanding.
Unsatisfactory:
insufficient evidence
of knowledge, ability
to evaluate,
synthesise ideas,
solve problems,
understand and
apply theory.
Inadequate
evidence of analysis
and conceptual
understanding.
Poor: little to no
understanding of
subject and its
context
Excellent: excellent
management and
application of, and
prowess / dexterity
/ capability with
relevant skills.
Very Good:
management and
application of, and
prowess / dexterity /
capability with
relevant skills.
Good: management
and application of,
and prowess /
dexterity / capability
with relevant skills.
Satisfactory:
management and
application of, and
prowess / dexterity /
capability with
relevant skills.
Unsatisfactory:
management and
application of, and
prowess / dexterity
/ capability with
relevant skills.
Poor: management
and application of,
and prowess /
dexterity / capability
with relevant skills
Page 8 of 13
Module Leader: Dr Claire Ancient
Assessment Criteria
(encompassing some
or all of the
elements below)
Values, Qualities and
Attributes
Ethical, legal, moral,
subject-related and
professional values,
hard and soft skills;
desired
characteristics,
behaviours and
attributes e.g. selfcriticality and
reflection
A*
80-100%
A
70-79
B
60-69
C
50-59
D
40-49
F
30-39
F
1-29
Exceptional:
appreciation of
ethical implications
and demonstration
of values, qualities
and attributes are all
outstanding
Excellent:
appreciation of
ethical implications
and demonstration
of values, qualities
and attributes are all
excellent
Very good:
appreciation of
ethical implications
and demonstration
of values, qualities
and attributes are
very good
Good: good
appreciation of
ethical implications
and demonstration
of values, qualities
and attributes
Satisfactory:
sufficient
appreciation of
ethical implications
and demonstration
of values, qualities
and attributes
Unsatisfactory:
insufficient
appreciation of
ethical implications
and demonstration
of values, qualities
and attributes
Poor: little to no
appreciation of
ethical implications
and demonstration
of values, qualities
and attributes
BS2202: Object Oriented Software Development
Page 9 of 13
Module Leader: Dr Claire Ancient
4.1. Assessment Criteria Mapping
The following table demonstrates how the learning outcomes of this module relate to the University-wide
Assessment Criteria:
University-wide
Assessment Criteria
Research and Enquiry
Ability to identify relevant sources,
evaluate, use materials and compare data
in a range of forms and from diverse
sources
Learning
Outcome
(a)
Learning
Outcome
(b)
Learning
Outcome
(c)
Learning
Outcome
(d)




















Academic Skills
academic conventions, structures,
referencing, ability to respond to brief,
according to subject requirements,
communication and presentation
Subject Knowledge and
Understanding
Intellectual engagement, grasp of
concepts, principles, key tenets of
subject, theory, context, limitations
Applied and Practical Skills
Technical / professional / performative /
field or lab based / digital etc. May
include discipline specific skills such as
creative writing
Values, Qualities and Attributes
Ethical, legal, moral, subject-related and
professional values, hard and soft skills;
desired characteristics, behaviours and
attributes e.g. self-criticality and
reflection
BS2202: Object Oriented Software Development
Page 10 of 13
Module Leader: Dr Claire Ancient
5. Marking Criteria
5.1. Marking Criteria – Project Documentation (40 marks)
Project Scope and Client Requirements
Is there a statement of the project scope? Are
the client requirements considered and listed? Is
there a discussion of the requirements for the
system?
(10 marks)
GUI Diagrams
Are there wireframes for all screens? Has the
accessibility and usability of the interface been
considered? Has UN SDG 10 been discussed in
relation to the interface design?
(10 marks)
Class Diagrams
Is there a class diagram using UML included?
Does the class diagram demonstrate inheritance
and object-oriented programming principles? Is
an appropriate database design diagram
included? Has there been an appropriate
discussion of Design Patterns used or not used?
(10 marks)
BS2202: Object Oriented Software Development
Excellent description of the
required system, which
includes all of the
requirements with additional
features which were implied by
the assignment brief but not
specifically stated.
Very good description of the
system, which includes all of
the requirements described by
the assignment brief.
Good description of the
system, which includes most of
the requirements described by
the assignment brief.
Brief description of the system,
with very few requirements,
which do not cover the
required system.
9-10 marks
6-8 marks
3-5 marks
0-2 marks
An excellent collection of
wireframes which contains all
the screens used within the
system. Both accessibility and
usability of the system has
been very well considered
applied directly to the chosen
scenario.
A very good collection of
wireframes which contains
most of the screens used
within the system. Both
accessibility and usability of
the system has been
considered and mostly applied
to the chosen scenario.
A good collection of
wireframes which contains a
couple of the screens used
within the system. Either the
accessibility or usability of the
system has been considered
but not adequately applied to
the chosen scenario.
An adequate wireframe which
only contains the key screen
used within the system.
Neither accessibility or
usability have been considered.
9-10 marks
6-8 marks
3-5 marks
0-2 marks
Excellent class and database
design diagrams included. The
class diagram demonstrates
excellent use of objectoriented programming
principles and appropriate use
of inheritance.
Very good class and database
design diagrams included. The
class diagram demonstrates
very good use of objectoriented programming
principles and appropriate use
of inheritance.
Good class and database
design diagrams included. The
class diagram demonstrates
good use of object-oriented
programming principles and
but the use of inheritance is
not appropriate.
Adequate class diagram has
been included. The class
diagram demonstrates
adequate use of objectoriented programming
principles and but there is no
use of inheritance. The
database design diagram has
not been included.
9-10 marks
6-8 marks
3-5 marks
0-2 marks
Page 11 of 13
Module Leader: Dr Claire Ancient
Functionality Testing
Is there a plan which includes tests for all the
possible entries and outputs? Are there
appropriate tests for data validation (i.e.
ensuring correct user input)? Are the expected
outputs sensible?
Excellent test plan which has
been well thought through. It
includes all of the possible
functionality tests which would
be required by the system.
There is very good
consideration of the
anticipated output for the
tests.
Are all the tests from the plan included? If tests
have failed, is there evidence that it has been
resolved and retested?
(10 marks)
Excellent evidence of the
testing process which includes
all of the tests from the plan.
Excellent resolution of failed
tests and inclusion of retest
results.
9-10 marks
Very good test plan which has
been thought through. It
includes most of the possible
functionality tests which would
be required by the system.
There is good consideration of
the anticipated output for the
tests.
Very good evidence of the
testing process which includes
all of the tests from the plan.
Very good resolution of failed
tests and inclusion of retest
results.
6-8 marks
Adequate test plan. It includes
some of the possible
functionality tests which would
be required by the system.
There is some consideration of
the anticipated output for the
tests.
Poor test plan. It includes
some of the possible
functionality tests which would
be required by the system.
There is no consideration of
the anticipated output for the
tests.
Good evidence of the testing
process which includes most of
the tests from the plan.
Limited evidence of resolution
of failed tests but there is no
inclusion of retest results.
Some evidence of the testing
process which includes some of
the tests from the plan. No
evidence of resolution of failed
tests and no retest results.
3-5 marks
0-2 marks
5.2. Marking Criteria – Code (45 marks)
Has the following functionality been implemented?
(35 marks)
Database
Fully Implemented
(5 marks)
Partially Implemented
(1-4 marks)
Not Implemented
(0 marks)
Graphical User Interface
Login System
Item Images
Search Functionality
File Output
Other Appropriate Functionality
BS2202: Object Oriented Software Development
Page 12 of 13
Module Leader: Dr Claire Ancient
Code Quality
Does the system correctly use object-oriented
techniques? Has inheritance been implemented
correctly? Are the variable, method, and class
names appropriate? Is there appropriate use of
commenting? Is there any code which is overly
complicated? Have the files been well laid out
(i.e. use of tabbing)?
Note: marks will be deducted for including too
many comments within the files.
Excellent code quality. Objectoriented principles have been
fully implemented. Inheritance
has been implemented in an
appropriate manner. The
variable, method, and class
names are appropriate and the
code is not overly complicated.
Very good use of comments
within the code.
Very good code quality.
Object-oriented principles have
been mostly implemented.
Inheritance has been
implemented but not in an
entirely appropriate manner.
The variable, method, and class
names are predominantly
appropriate and the code is not
too complicated. Good use of
comments.
Reasonable code quality. An
attempt has been made to
implement object-oriented
principles. Inheritance has not
been implemented. The
variable, method, and class
names are appropriate in
places. The code is overly
complicated in places. Some
use of comments.
Poor code quality. Objectoriented principles have not
been implemented.
Inheritance has not been
implemented. The variable,
method, and class names are
not appropriate. The code is
overly complicated. No
comments have been used to
aid readability.
9-10 marks
6-8 marks
3-5 marks
0-2 marks
An excellent demonstration
which includes all the features
of the developed system. The
content of the demonstration
was appropriate for a nontechnical audience throughout.
A very good demonstration
which includes most of the
features of the developed
system. The content of the
demonstration was
appropriate for a non-technical
audience for most of the
duration.
An adequate demonstration
which includes all the key
features of the developed
system. The content of the
demonstration was
appropriate for a non-technical
audience in places.
A poor demonstration which
includes some of the key
features of the developed
system. The content of the
demonstration was not
appropriate for a non-technical
audience.
9-10 marks
6-8 marks
3-5 marks
0-2 marks
Excellent presentation style.
The presentation has excellent
coverage of the system
developed.
Very good presentation style.
The presentation has very good
coverage of the system
developed.
Adequate presentation style.
The presentation has good
coverage of the system
developed.
Poor presentation style. The
presentation has poor
coverage of the system
developed.
5 marks
3-4 marks
2 marks
0-1 marks
(10 marks)
5.3. Marking Criteria – Presentation (15 marks)
Project Demonstration
Does the demonstration present the majority of
the features required by the scenario? Was the
demonstration well presented for a nontechnical audience?
(10 marks)
Presentation Skills
Is the demonstration well presented? Does it
finish in the correct amount of time? Does it
include the key information relating to the
system developed (inc. overview of scenario)?
(5 marks)
Total Mark:
BS2202: Object Oriented Software Development
Page 13 of 13
/100
Module Leader: Dr Claire Ancient
Download