PRACTICAL EXAMINATION
Subject code: PRO192 - FALL 2023
Duration : 85 minutes
Develop manage customer of a company OOP application with following components and requirements:
1. Create MVC console application in NetBean:
a. Define class Customer with following attributes and methods: (2 marks)
+ CustomerID, Name, Phone, Date of Birth
+ Constructors, get/set(), toString() - (look at screen snapshot below for sample)
+ Method return homenetwork of customer base on phone number.
For "098" homenetwork is "Viettel", for "090" homenetwork is "VinaPhone", and for "093"homenetwork is "Mobiphone".
b. Define class Company with following attributes and methods: (2.5 marks)
+ List of Customer(0.5 mark)
+ Read text file to load data for Company-company.txt is provided(1 mark)
+ Search Customer by different criteria(0.5 mark)
+ Sort customer list by any fields(0.5 mark)
Develop CompanyManagement class for application running: (4 marks)
+ Main menu for application includes: Display all customers, search Customer, sort customers, statistical amount Customer by homenetwork.(1 mark)
Hint: An abstract Menu class is provided for use in the application.
+ Method to display all customers (0.5 mark)
+ Method for seaching Customer: must offer search menu with 2 options: (0.5 mark)search by ID: (0.5 mark)
search by DOB: list all customer that have DOB before user input date (0.5 mark)
+ Method for sort customers descending by name(0.5 mark)
+ Display and statistic customers by homenetwork(0.5 mark)
c. Technical requirements ((1.5 marks):
+ Create package model for Customer and Company class, view for Menu and controller for CompanyManagement class(0.5 mark)
+ Validate for CustomerID has 4 characters and starts with "KH" (Example: KH01).
Error message: "The CustomerID must follow the format start with "KH" and 2 digits" (0.5 mark).
+ Validate for Date of Birth correct format dd/MM/yyyy.
FUO
Error message: "Date must be in the format: dd/MM/yyyy" (0.5 mark).
+ User interface as sample images below.