Order this Assignment Now: £279 VALID THRU: 17-Oct-2024
Assignment Briefs
09-06-2024
OnlienUniPortal is a Java and JSP-based website, allowing users to search for module by name or code, “favourite”, and “feedback” on module
Southampton Solent University
Coursework Assessment Brief
Assessment Details
Object Oriented Design and Development
Module Title:
Object Oriented Design and Development
Module Code:
QH0543
Module Leader:
Level:
5
Assessment Title:
Individual Assignment – OnlineUniPortal (Part Two)
Assessment Number:
AE2
Assessment Type:
Software Development
Restrictions on Time/Word Count:
Max 5 min for the pre-recorded presentation video & around 1000-2000 words (guidance only) plus diagrams.
Consequence of not meeting time/word count limit:
There is no penalty for submitting below the word count limit, but students should be aware that there is a risk they may not maximise their potential mark. There is no penalty for submitting above the word limit
If the presentation exceeds 5 minutes, only the first 5 minutes will be assessed.
Individual/Group:
Individual
Assessment Weighting:
60%
Issue Date:
16/07/2024
Hand In Date:
11/10/2024
Planned Feedback Date:
Within 20 working days of submission
Mode of Submission:
on-line
Number of copies to be submitted:
1
Anonymous Marking
This assessment: is exempt from anonymous marking.
Assessment Task
This is an individual assignment; please work on it individually , not in your group.
OnlineUniPortal – Stage 2
OnlienUniPortal is a Java and JSP-based website, allowing users to search for module by name or code, “favourite”, and “feedback” on module. You have made a start on the development of OnlienUniPortal in AE1. Your task for AE2 is to complete the development of OnlienUniPortal, using Java, JSP, JDBC and SQLite and using the group-developed code from the Group Project submission as your starting point.
The following scenario outlines the design requirements, but you are to develop a full design addressing as a minimum the following features. You may add additional features for usability as you see fit.
The web application has these requirements (note that some have been extended from AE1, please read carefully):
a) A user should be able to search for Module from name or code and display.
b) A user should be able to add module as favourite.
c) A user should be able to add feedback on Module and can see their previous feedback.
d) A user should be able to signup for an account.
e) A user should be able to login with a username and password. The system must be able to distinguish between regular users and administrators.
f) A user should be able to change their personal details.
g) An admin user should be able to login and see all the users.
h) An admin user should be able to change the details of a current user (e.g. name, password) and delete a user.
i) An admin user should be able to add a new module.
j) An admin user should be able to authorise and delete feedback. Feedback should be referenced by a unique ID.
Please see the assessment criteria below to find out what grade you will obtain by completing some or all of the tasks.
What you must produce
You must produce:
- An analysis and design (use case diagrams, robustness diagrams and sequence diagrams);
- A working application;
- A test plan and series of unit tests;
- A report.
The details of each is described in “How to do the assignment”, below.
How to do the assignment
1. First of all, perform an analysis and design on the requirements above, producing:
a) Use cases
You should document use cases for each actor in your system, by drawing use case diagrams to represent the requirements above. Make use of precedes/extends/includes where appropriate.
b) Robustness diagrams / sequence diagrams
You should draw robustness diagrams and sequence diagrams for each use case to document how objects interact in your system.
c) Class diagram
Finally produce a class diagram for your system. The methods on the diagram must correspond to those on the sequence diagrams; if they do not, you will receive no credit for the class diagram. JSP pages are not classes and therefore should not be included.
2. Secondly, adapt and extend your Group Project code so that it meets the requirements above and matches your analysis and design diagrams . In the report , explain how your code has been adapted . It is possible that you may need to make significant changes to your code. But there must be clear evidence it’s derived from the group project, through similarity in the code and/or a clear explanation of your changes, and the rationale for them, in the report . If there is no clear evidence of this you risk receiving a mark of zero for the implementation criterion.
Ensure also that your code meets the software engineering principles of separation of concerns. Ensure you document the changes you made to the original code in your report to meet these principles.
3. Perform an appropriate set of unit tests (using JUnit) on the non-GUI classes within your system. Document your tests in your report , with a test plan including columns for test, expected result, actual result, and reason for differences.
4. Finally ensure that any brand new code that you developed (not present in the group project) is explained clearly, and in technical detail, within the report .
Report
The report is referred to in steps 1-4 under “How to do the assignment”, above. To summarise, it must contain:
a technical explanation of how the group-developed code has been adapted and extended to meet your analysis and design diagrams, including any changes to the group project code.
a technical explanation of any brand new code written.
an explanation of how your code meets the principles of separation of concerns, including any changes you had to make to meet these principles.
a test plan, as explained above
Guidelines for the hand-in
You must follow these guidelines, as otherwise you may lose significant marks.
(a) Implementation and Testing
You are required to use the technologies introduced in class. Do not make the project difficult to mark by going off on a tangent.
Your implementation should use JSP for the back end and may use JavaScript/CSS within the web client if you desire (though you will not be awarded credit for front-end code). Please note that marking will concentrate on the functionality, and not the `prettiness` of your implementation.
You should capture all appropriate exceptions and return meaningful error messages for user generated exceptions. Your program must not crash unrecoverably.
Your submitted code must compile even if it is not functionally correct or complete. Code which does not compile, or which crashes on start-up, will receive a fail grade .
Guidance will be given in class on the location of the database file ( .db file) to use in your code when you hand it in. This will be to ensure that the tutor does not have to edit your code to change the database location. You must follow this guidance as if the database is in an unexpected place and the application does not work as a result, you will receive a fail grade (as stated above). If you miss the class where this is covered, please email the tutor.
(b) Packaging and Handing in
Submit your code, your diagrams, and your report in a ZIP file on SOL BEFORE the submission date.
RAR files will be ignored and not marked. This includes RAR files “disguised” as ZIP files by changing the extension. Please do not use this non-standard format!
Your diagrams MUST be placed within a sub-folder called diagrams within the top-level folder of your ZIP file. If they are not placed in this location, they will not be marked!
Your diagrams MUST be provided in a common image format (e.g. PNG or JPEG). If they are not provided in such a format, they will be ignored !
You should include instructions for a user to build and run and use your submission.
Assessment criteria
A1-A4
B1-B3
C1-C3
D1-D3
F1-F3
Analysis and design (30%)
Work fully complete; additional considerations beyond the basics have been made in your design. Analysis and design artefacts all consistent with each other.
Work complete, analysis and design correct and artefacts all consistent with each other (a small number of inaccuracies or inconsistencies are permissible for a lower B).
Work complete, diagrams predominantly correct and consistent with each other, but with a number of inaccuracies.
Work mostly complete; significant inaccuracies and/or inconsistencies in your analysis and design.
(F1) Some parts of the analysis and design completed, but others incomplete.
(Lower F) minimal effort.
Implementation (40%)
Requirements a) to j) completed to a high standard. Application is robust, user-friendly, and fully handles errors.
For an A3 upward, task j) should be mostly or fully completed.
Requirements a) to j) completed, with a small number of minor omissions acceptable for a lower B.
Requirements a) to f) completed, and fully working.
Requirements a) to e) completed, and fully working.
Requirements a) to e) not completed.
Code does not appear to be derived from the Group Project.
Testing
(10%)
Comprehensive range of JUnit tests
A wide range of JUnit tests undertaken. There may be a small number of omissions
Significant number of JUnit tests undertaken but with a number of omissions
A small number of JUnit tests undertaken with significant omissions
Little or no testing undertaken
Report & Presentation (20%)
Clear and in-depth report & presentation covering the required topics (see above), with more advanced concepts discussed.
Clear and in-depth report & presentation covering the required topics (see above)
Largely clear report & presentation covering the required topics (see above) with small parts vague or unclear.
Write-up clear and accurate in some places but unclear and/or inaccurate in others. A significant number of omissions.
Predominantly unclear and/or inaccurate write-up. Little understanding demonstrated.
Learning Outcomes
This assessment will enable students to demonstrate in full or in part the learning outcomes identified in the unit descriptors.
Living CV
As part of the University`s Work Ready, Future Ready strategy, you will be expected to build a professional, Living CV as you successfully engage and pass each module of your degree.
The Living CV outputs evidenced on completion of this assessment are:
1. An object-oriented analysis and design of a web-based Java application. This can be published to GitHub for others to view.
2. A fully-functional web based object-oriented Java application using JSP. This can be published to GitHub for others to view.
Please add these to your CV via the Living CV builder platform on Solent Futures Online Solent Futures Online
Late Submissions
You are reminded that:
If this assessment is submitted late i.e. within 7 calendar days of the submission deadline, the mark will be capped at 40% if a pass mark is achieved;
If this assessment is submitted later than 7 calendar days after the submission deadline, the work will be regarded as a non-submission and will be awarded a zero;
If this assessment is being submitted as a referred piece of work, then it must be submitted by the deadline date; any Refer assessment submitted late will be regarded as a non-submission and will be awarded a zero.
Assessment regulations
Extenuating Circumstances
The University’s Extenuating Circumstances (EC) procedure is in place if there are genuine short term exceptional circumstances that may prevent you submitting an assessment. If you are not `fit to study’, you can either request an extension to the submission deadline of 7 calendar days or you can request to submit the assessment at the next opportunity, i.e. the resit period (as a Defer without capping of the grade). In both instances you must submit an EC application with relevant evidence. If accepted under the university regulations there will be no academic penalty for late submission or non-submission dependent on what is requested. You are reminded that EC covers only short term issues (20 working days) and that if you experience longer term matters that impact on your learning then you must contact the Student Hub for advice.
Please find a link to the EC policy below:
Extenuating Circumstances
Academic Misconduct
Any submission must be your own work and, where facts or ideas have been used from other sources, these sources must be appropriately referenced. The University’s Academic Handbook includes the definitions of all practices that will be deemed to constitute academic misconduct. You should check this link before submitting your work.
Procedures relating to student academic misconduct are given below:
Academic Misconduct
Ethics Policy
The work being carried out must be in compliance with the university Ethics Policy. Where there is an ethical issue, as specified within the Ethics Policy, then you will need an ethics release or ethics approval prior to the start of the project.
The Ethics Policy is contained within Section 2S of the Academic Handbook:
Ethics Policy
Grade marking
The University uses an alpha numeric grade scale for the marking of assessments. Unless you have been specifically informed otherwise your marked assignment will be awarded a letter/number grade. More detailed information on grade marking and the grade scale can be found on the portal and in the Student Handbook.
Grade Marking Scale
Guidance for online submission through Solent Online Learning (SOL)
Online Submission
About this Assignment
Object Oriented Design and Development
Object-Oriented Design and Development (OODD) is a core methodology in software engineering that emphasises structuring software around objects rather than procedures. This approach allows for more modular, scalable, and maintainable systems. The assignment on OODD typically involves understanding the fundamental principles of object-oriented programming (OOP), designing systems based on these principles, and demonstrating their implementation in practical scenarios.
Key Concepts of OODD
Encapsulation : This principle involves bundling data and methods that operate on the data within a single unit, or class. Encapsulation helps in hiding the internal state of objects, exposing only what is necessary, thus safeguarding the integrity of the data.
Inheritance : Inheritance allows new classes to be created based on existing ones, facilitating code reusability and logical class hierarchy. By inheriting properties and methods from parent classes, derived classes can extend or override functionalities as needed.
Polymorphism : Polymorphism enables objects of different types to be treated as objects of a common super type. It supports method overloading and overriding, promoting flexibility and the ability to define multiple behaviours in response to different data inputs.
Abstraction : Abstraction simplifies complex systems by breaking them into smaller, manageable components. It hides implementation details and exposes only the necessary attributes and methods, making system interactions clearer and easier to manage.
Scope of the Assignment
This assignment requires a clear demonstration of understanding OODD principles through:
System Analysis and Design : A thorough analysis of system requirements and translating them into object-oriented models. The task involves identifying key objects, their attributes, and relationships. Techniques such as Unified Modelling Language (UML) diagrams, including class and sequence diagrams, should be employed.
Implementation of OOP Principles : The next stage involves implementing the designed system using object-oriented programming languages such as Java, C++, or Python. The implementation should demonstrate encapsulation, inheritance, polymorphism, and abstraction effectively.
Testing and Evaluation : Proper testing frameworks should be used to ensure the system functions as intended. Both unit tests (testing individual components) and integration tests (ensuring components work together) should be considered. Evaluation of system performance, scalability, and maintainability is also essential.
Documentation : The assignment should be accompanied by detailed documentation explaining the design decisions, code structure, and any challenges encountered during the development process. This documentation ensures the system is comprehensible to others, facilitating future modifications or expansions
Order this Assignment Now:£279
100% Plagiarism Free & Custom Written, Tailored to your instructions