0% found this document useful (0 votes)
61 views11 pages

AS1 - Full Name - ID

Download as docx, pdf, or txt
Download as docx, pdf, or txt
Download as docx, pdf, or txt
You are on page 1/ 11

Higher Nationals in Computing

Advanced Programming - 1651

ASSIGNMENT
No.1

Learner’s Name:.................................

Assessor Name: NGUYEN VAN SON

Class: .................
ID: .........
Assignment due:
Assignment submitted:
ASSIGNMENT 1 FRONT SHEET
Qualification BTEC HND Diploma in Computing and Systems Development

Unit number and


Unit 20: Advanced Programing
title

Assignment
Assignment due
submitted

Learner’s name Assessor name

Learner declaration:
I certify that the work submitted for this assignment is my own and research sources are
fully acknowledged.

Learner signature Date

Grading grid
P1 P2 M1 M2 D1 D2

Assignment title Assignment 1: OOP principles, features and design.

In this assignment, you will have opportunities to provide evidence against the following
criteria.
Indicate the page numbers where the evidence can be found.

Assessment Expected evidence Task Assessor’s Feedback


criteria no.

LO1. Understand the principles of object oriented programming.


- Object/Class,
P1. Discuss the
- Abstraction,
principles;
characteristics - Encapsulation,
1
and - Inheritance,
features of object
orientated - Polymorphism,
programming. - Abstract classes,
- Interfaces

LO2. Be able to design object oriented programming solutions.

P2. Identify the - Use-case diagrams


objects and data - Class diagrams
and file
structures - Pseudo-codes
required to - Activity Diagrams. 2
implement a
given design. - Judgments for features
have been
included/excluded and
Design an object why certain features have
orientated been used over others

Assessment criteria Expected Feedback


Evidence (note on Merit/Distinction if applicable)
Merit descriptor No.
(M1)
Merit descriptor No.
(M2)
Distinction descriptor
No. (D1)
Distinction descriptor
No. (D2)

Summative feedback:

Assessor’s Date:
Signature:

ASSIGNMENT 1 BRIEF
Unit Number and Title 20: Advance Programming

Academic Year 2021

Unit Tutor Nguyễn Văn Sơn

Assignment Title Assignment 1

Issue Date

Submission Date

IV Name & Date

Pass Merit Distinction

LO1 Examine the key components related to the


object-orientated programming paradigm,
analysing design pattern types

P1 Examine the M1 Determine a design D1 Analyse the relationship


characteristics of the pattern from each of between the object-orientated
object-orientated the creational, paradigm and design patterns.
paradigm as well as the structural and
various class behavioural pattern
relationships. types.

LO2 Design a series of UML class diagrams

P2 Design and build M2 Define class


class diagrams using a diagrams for specific
UML tool. design patterns using a
UML tool.

Scenario
Specific
requirements
You’ve just made a contract with FPT Academy International, and
(see Appendix for are about to be appointed as a Project Leader for a group of
assessment programmers to develop its Student Management System.
criteria and grade
descriptors) In this Student Management System, you are required to create an
application to store list of students and list of lecturers. Following
information are to be stored for each student:

- stdId: The student ID of the form like GTxxxxx or GCxxxxx (x: is a


digit)
- stdName: Student name
- stdDoB: Student date of birth
- stdEmail: Student email
- stdAddress: Student address
- stdBatch: The batch (class) of the student

Following information are to be stored for each lecturer:

- lecId: Lecturer ID with 8 digits (fixed)


- lecName: Lecturer
- lecDoB: Lecturer date of birth
- lecEmail: Lecturer email
- lecAddress: Lecturer address
- lecDept: Lecturer department (e.g., Computing, Business, etc)

This application will need to provide following functionalities via a


menu

=======================

1. Manage Students
2. Manage Lecturers
3. Exit

=======================

Please choose:

When user selects 3, the program will exit.

When user selects 1, the program will display submenu for managing
students:

=======================

1. Add new student


2. View all students
3. Search students
4. Delete students
5. Update student
6. Back to main menu

=======================

Please choose:
When user selects 2, the program will display submenu for managing
lecturers:

=======================

1. Add new lecturer


2. View all lecturers
3. Search lecturers
4. Delete lecturers
5. Update lecturer
6. Back to main menu

=======================

Please choose:

For the submenu:

When user chooses 1, program will prompt user to input


student’s/lecturer’s information (specified previously). After that,
program will validate the input data and if they are all valid, program
will add a new student/lecturer to the current list of
students/lecturers. Program should inform to the user
corresponding messages.

When user chooses 2, the program will list all the students/lecturers
to the screen, each student/lecturer in a row and
student’s/lecturer’s data fields are separated by ‘|’.

When user chooses 3, the program will ask user to input


student’s/lecturer’s name to search for, the user can just type part
of the name in order to search for complete student/lecturer
information.

When user chooses 4, program will ask user to input


student/lecturer id to delete the student/lecturer with the specified
id if it exists, otherwise, it will display a message to inform users that
the student/lecturer with such id doesn’t exist.

When user chooses 5, program will first ask user to input


student/lecturer id to update, once inserted and a student/lecturer
with the inserted id exists, it will display current data for each field
of the student/lecturer and user can type in new data to update or
just press enter to keep the current data for the field.

When user chooses 6, program will back to the main menu.


Task 1
Produce a written, self-learning course for managers/senior
developers that explain the principles and features of OOP and that
show how OOP is good for code re-use. You can include appropriate
sample Java code where it aids your points and/or provides further
clarification. Ensure that any diagrams that are included have
captions and are referenced in the text.
Hint: You must include the following terms
- Object/Class,
- Abstraction,
- Encapsulation,
- Inheritance,
- Polymorphism (Overloading and Overriding),
- Abstract classes,
- Interfaces

Task 2
Problem Analysis, for the scenario above.
You need to produce a full design for the requirements given. The
design must include
- Use-case diagrams for the most important features;
- Class diagrams for all objects identified as well as class
relationships.
- Pseudo-code for the Algorithms for the main functionalities (3
flowcharts for most complex functions).
Example code can be used to help clarify OOP features.

For the assignment assessments, you are required to:


Student guidelines 1. Produce a design in UML that fully utilizes OOP principles and
features. (Use case, class diagrams, collaboration diagrams etc.).

Submission
Students are expected to submit hard copy of assignment
requirements

Grade Descriptor
PASS criteria
LO Learning outcome AC In this assessment you will have the Task
(LO) opportunity to present evidence no.
that
shows you are able to:

LO1 Examine the key 1 Examine the characteristics of the 1


components related object-orientated paradigm as well
to the object- as the various class relationships.
orientated
programming
paradigm, analysing
design pattern types
LO2 Design a series of Design and build class diagrams
UML class diagrams using a UML tool.

In addition to the above PASS criteria, this assignment gives you the opportunity to
submit evidence in order to achieve the following MERIT and DISTINCTION grades
Indicative
Grade Descriptor Contextualization
characteristic/s
M1 Determine a design pattern from
each of the creational, structural
and behavioural pattern types.
M2 Define class diagrams for specific
design patterns using a UML tool.
D1 Analyse the relationship between
the object-orientated paradigm
and design patterns.
D2 Define/refine class diagrams
derived from a given code
scenario using a UML tool.

This brief has been verified as being fit for purpose


Internal
Signature Date
Verifier 1

Internal
Signature Date
Verifier 2

1. Characteristics of the object-orientated paradigm (P1)


1.1. Object/Class
1.2. Abstraction
1.3. Encapsulation
1.4. Inheritance
1.5. Polymorphism (Overloading and Overriding),
1.6. Abstract classes,
1.7. Interfaces

2. The various class relationships (P1)

3. Design and build class diagrams using a UML tool (P2)


- Use-case diagram
- Class diagram and explanation
- Pseudo-code (at least 3 flowcharts for main features and explanations)
- Activity Diagrams and explanations
- Judgments for features have been included/excluded and why certain features have been
used over
4. References

You might also like