Implementing a Java Program for a Broadband Service Company
Project Requirements
Develop a text-based menu driven program that calculates broadband service company package costs.
The broadband service provider offers TV monthly options: Basic, Premium, and Platinum at different prices. They also have various internet service options with different download speeds and costs. Additionally, they offer different phone services with associated costs.
Customer Information must include: Customer's name, address, phone number, and customerID number.
Regular Expressions: Zip code input should be 5 digits only while phone numbers must be in the form (xxx) xxx-xxxx. Use Regular Expressions to validate zip codes and phone numbers.
Handle Exceptions: Use User Defined Exceptions to ensure correct formatting of zip codes and phone numbers.
Flexibility: The application should read service options from a text file named serviceOptions.dat automatically at startup.
Save Data: Write completed transaction data to a text file with customer ID, total cost per month, and service cost breakdown.
Search Function: Include a menu option to search the transaction file based on customerID number.
Minimum Program Design Requirements: Utilize object-oriented design with classes such as Customer, Package, ServiceCompany, and ServiceCompanyTester.