Advanced Programming Assignment: Object-Oriented Programming and Design Patterns, Essays (university) of Information Technology

An assignment brief for a BTEC Level 5 HND Diploma in Business unit named 'Advanced Programming'. Students are required to submit a group written report and presentation about Object-Oriented Programming (OOP) paradigm, its characteristics, and design patterns. The assignment includes analyzing OOP concepts, creating UML class diagrams, and explaining the relationship between OOP and design patterns.

Typology: Essays (university)

2021/2022

Uploaded on 12/03/2022

le-xuan-phu-btec
le-xuan-phu-btec 🇻🇳

7 documents

1 / 14

Toggle sidebar

This page cannot be seen from the preview

Don't miss anything!

bg1
ASSIGNMENT 1 FRONT SHEET
Qualification BTEC Level 5 HND Diploma in Computing
Unit number and title Unit 20: Advanced Programming
Submission date 2022 July 5 Date Received 1st submission
Re-submission Date 2022 July 5 Date Received 2nd submission
Student Name Le Xuan Phu Student ID BSBF190029
Class PBIT16101 Assessor name Lam Hong 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
Grading grid
P1 P2 M1 M2 D1 D2
1 | P a g e
pf3
pf4
pf5
pf8
pf9
pfa
pfd
pfe

Partial preview of the text

Download Advanced Programming Assignment: Object-Oriented Programming and Design Patterns and more Essays (university) Information Technology in PDF only on Docsity!

ASSIGNMENT 1 FRONT SHEET

Qualification BTEC Level 5 HND Diploma in Computing Unit number and title Unit 20: Advanced Programming Submission date 2022 July 5 Date Received 1st submission Re-submission Date 2022 July 5 Date Received 2nd submission Student Name Le Xuan Phu Student ID BSBF Class PBIT16101 Assessor name Lam Hong 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 Grading grid P1 P2 M1 M2 D1 D

❒ Summative Feedback: ❒ Resubmission Feedback:

Grade: Assessor Signature: Date: Lecturer Signature:

Format: The submission is in the form of a group written report and presentation. 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: Scenario : You have recently joined a software development company to help improve their documentation of their in-houses software libraries which were developed with very poor documentation. As a result, it has been very difficult for the company to utilise their code in multiple projects due to poor documentation. Your role is to alleviate this situation by showing the efficient of UML diagrams in OOAD and Design Patterns in usages. Tasks You and your team need to explain characteristics of Object-oriented programming paradigm by applying Object-oriented analysis and design on a given (assumed) scenario. The scenario can be small but should be able to presents various characteristics of OOP (such as: encapsulation, inheritance, polymorphism, override, overload, etc.). The second task is to introduce some design patterns (including 3 types: creational, structural and behavioral) to audience by giving real case scenarios, corresponding patterns illustrated by UML class diagrams. To summarize, you should analyze the relationship between the object-orientated paradigm and design patterns.

The presentation should be about approximately 20-30 minutes and it should be summarized of the team report. Learning Outcomes and Assessment Criteria Pass Merit Distinction LO1 Examine the key components related to the object-orientated programming paradigm, analysing design pattern types P1 Examine the characteristics of the object-orientated paradigm as well as the various class relationships. M1 Determine a design pattern from each of the creational, structural and behavioural pattern types. D1 Analyse the relationship between the object- orientated paradigm and design patterns. LO2 Design a series of UML class diagrams P2 Design and build class diagrams using a UML tool. M2 Define class diagrams for specific design patterns using a UML tool. D2 Define/refine class diagrams derived from a given code scenario using a UML tool.

Introduction

I have recently joined a software development company to help improve their documentation of their in-houses software libraries which were developed with very poor documentation. As a result, it has been very difficult for the company to utilize their code in multiple projects due to poor documentation. My role is to alleviate this situation by showing the efficient of UML diagrams in OOAD and Design Patterns in usages. LO1 Examine the key components related to the object-orientated programming paradigm, analyzing design pattern types I. Examine the characteristics of the object-orientated paradigm as well as the various class relationships. (P1)

  1. Define Object-Orientated Programming(OOP)?
    • OOP (short for Object Oriented Programming) – object-oriented programming is a programming method based on the concept of classes and objects.
    • OOP focuses on manipulating objects rather than the logic for manipulating them, making code manageable, reusable, and maintainable.
  2. Object and Class
    • Class: Class is an abstraction of the object. Objects with similar properties are grouped into a class. The class will also include two pieces of information: properties and methods. An object will be considered an instance of the class.
  • Object: Objects in OOP consist of two main components:  Attributes: are the information and characteristics of the object  Methods: are the behaviors that the object can perform
  1. Advantages of Object Oriented Programming (OOP)
  • OOP models complex things as simple structures.
  • Reusable OOP code, which saves resources.
  • Makes debugging easier. Compared to finding errors in many places in the code, finding errors in (pre- structured) classes is simpler and less time consuming.
  • High security, protecting information through encapsulation.
  • Ease of project expansion.
  1. Encapsulation
  1. Polymorphism Polymorphism in OOP programming allows different objects to perform the same function in different ways.
  1. Abstraction Abstraction eliminates the unnecessary complexity of the object and focuses only on what is essential and important.
  1. Class Diagram

References