Advanced Programming Assignment 2 (Pass), Assignments of Advanced Algorithms

Scenario: (continued from Assignment 1) Your team has shown the efficient of UML diagrams in OOAD and introduction of some Design Patterns in usages. The next tasks are giving a demonstration of using OOAD and DP in a small problem, as well as advanced discussion of range of design patterns.

Typology: Assignments

2021/2022

Uploaded on 12/28/2022

ng-n-minh-anh
ng-n-minh-anh 🇻🇳

4.8

(26)

34 documents

1 / 40

Toggle sidebar

This page cannot be seen from the preview

Don't miss anything!

bg1
Higher Nationals in Computing
Unit 20: Advanced Programming
ASSIGNMENT 2
Learner’s name: NGUYEN GIA HUY
ID: GCS200801
Class: GCS0905C
Subject code: 1651
Assessor name: LE NGOC THANH
Assignment due: Assignment submitted:
pf3
pf4
pf5
pf8
pf9
pfa
pfd
pfe
pff
pf12
pf13
pf14
pf15
pf16
pf17
pf18
pf19
pf1a
pf1b
pf1c
pf1d
pf1e
pf1f
pf20
pf21
pf22
pf23
pf24
pf25
pf26
pf27
pf28

Partial preview of the text

Download Advanced Programming Assignment 2 (Pass) and more Assignments Advanced Algorithms in PDF only on Docsity!

Higher Nationals in Computing

Unit 20: Advanced Programming

ASSIGNMENT 2

Learner’s name: NGUYEN GIA HUY

ID: GCS 200801

Class: GCS0905C

Subject code: 1651

Assessor name: LE NGOC THANH

Assignment due: Assignment submitted:

ASSIGNMENT 2 FRONT SHEET

Qualification BTEC Level 5 HND Diploma in Computing Unit number and title Unit 20: Advanced Programming Submission date 20 Dec 2022 Date Received 1st submission Re-submission Date Date Received 2nd submission Student Name NGUYEN GIA HUY Student ID GCS Class GCH0705 Assessor name LE NGOC THANH Student declaration I certify that the assignment submission is entirely my own work and I fully understand the consequences of plagiarism. I understand that making a false declaration is a form of malpractice. Student’s signature HUY Grading grid P3 P4 M3 M4 D3 D

ASSIGNMENT 2 BRIEF Submission Format: Format: The submission is in the form of a group written report. This should be written in a concise, formal business style using single spacing and font size 12. You are required to make use of headings, paragraphs and subsections as appropriate, and all work must be supported with research and referenced using the Harvard referencing system. Please also provide a bibliography using the Harvard referencing system. Submission Students are compulsory to submit the assignment in due date and in a way requested by the Tutors. The form of submission will be a soft copy in PDF posted on corresponding course of http://cms.greenwich.edu.vn/ Note: The Assignment must be your own work, and not copied by or from another student or from books etc. If you use ideas, quotes or data (such as diagrams) from books, journals or other sources, you must reference your sources, using the Harvard style. Make sure that you know how to reference properly, and that understand the guidelines on plagiarism. If you do not, you definitely get fail Assignment Brief and Guidance: Qualification BTEC Level 5 HND Diploma in Computing Unit number Unit 20 : Advanced Programming Assignment title Examine and design solutions with OOP and Design Patterns Academic Year 2021 - 2022 Unit Tutor LE NGOC THANH Issue date 06 Dec 2022 Submission date 20 Dec 2022

Scenario : (continued from Assignment 1) Your team has shown the efficient of UML diagrams in OOAD and introduction of some Design Patterns in usages. The next tasks are giving a demonstration of using OOAD and DP in a small problem, as well as advanced discussion of range of design patterns. Tasks: Your team is now separated and perform similar tasks in parallel. You will choose one of the real scenarios that your team introduced about DP in previous phase, then implement that scenario based on the corresponding class diagram your team created. You may need to amend the diagram if it is needed for your implementation. In additional, you should discuss a range of DPs related / similar to your DP, evaluate them against your scenario and justify your choice. In the end, you need to write a report with the following content:

  • A final version of the class diagram based on chosen scenario which has potential of using DP.
  • Result of a small program implemented based on the class diagram, explain how you translate from design diagram to code.
  • Discussion of a range of DPs related / similar to your DP, evaluate them against your scenario and justify your choice (why your DP is the most appropriate in that case). Learning Outcomes and Assessment Criteria Pass Merit Distinction LO 3 Implement code applying design patterns P3 Build an application derived from UML class diagrams. M3 Develop code that implements a design pattern for a given purpose. D3 Evaluate the use of design patterns for the given purpose specified in M3. LO4 Investigate scenarios with respect to design patterns

Table of Contents

  • 1 Introduction
  • 2 Scenario analysis
    • 2.1 Scenario
    • 2.2 Diagram
  • 3 Implementation
    • 3.1 Code
    • 3.2 Program screenshots
  • 4 Discussion
    • 4.1 Range of similar patterns
    • 4.2 Usage of pattern
  • REFERENCES

1 Introduction My project to build a library management software for the University of Greenwich like the scenario 1 will be deployed and put into practice in today's report. In this report, I will describe in detail about each class as well as the connection between the parts of the program. In addition, I will implement the code in detail as well as explain specifically about the direction of the program. 2 Scenario analysis 2.1 Scenario For this project, the application is built on the core of object-oriented programming with the main language being C#. For that reason, the application of 5 SOLID properties of OOAD is necessary and should be implemented. In this report, I also highlight outstanding design patterns in OOP design and programming, thereby suggesting the most suitable software building method. The application of OOAD will be implemented through the UML class diagram design and the classes in the source code will follow the principles of OOAD. 2.2 Diagram

Class ProgramUser: This class builds a framework and allows 3 subclasses of librarian, teacher and student to inherit as well as redefine two virtual methods, addUser() and showUser().

Class Teacher & Student: Class Menu: This class builds the main menu outline for the program as well as a Menu() constructor and a LoginAdmin function to check the admin's account and password to access the class.

Show all teacher/student/librarian information: