Documentos de Académico
Documentos de Profesional
Documentos de Cultura
Before implement any Extra feature it is mandatory that you have implemented all the base
features beforehand.
Scenario
OSF has a new project to implement for a Rental Car company named RentC. At this
moment, the company only has a simple web site and does all its management and control
using excel files. This solution worked fine for the first years when they didn’t have a lot of
data to store, but now they have just too much data and lost control of it.
Your job is to create a console application that will replace those messy excel files giving
RentC a better control over their assets.
Technical Requirements
Programming Language: C#
Database Engine: SQL Server 2016 Express
WebServices
Specifications
Base features
Welcome Screen
In the welcome screen, you just need to present the welcoming message as
shown below and implement to 2 functionalities:
When he types a valid menu option and presses ENTER you should go to the desired
screen. If a valid number is entered, display an error message saying:
This is not a valid option.
Register new Cart Rent Screen
In this screen you will insert the data necessary to register a new car rent
All the fields are mandatory.
After the user submits the data, before saving it into the database you must validate:
If the Car Model exists and is available
If the Client ID exists
If the cart is available in the city for the user.
If End Date is equal or bigger than Start Date.
If the data passes all the validation, save it do the database as a new cart rent record and
send the user to the Menu Screen
If some of the data is not valid, display an error message to the user.
Register new Customer
In this screen you will insert the data necessary to register a new customer
All the fields are mandatory except ZIP Code.
After the user submits the data, before saving it into the database you must validate:
If the Client ID is not being used
If ZIP Code is in the correct US format: XXXXX
If Birth Date was informed, validate if it is in the correct format: dd-MM-yyyy
If the data passes all the validation, save it do the database as a new customer record and
send the user to the Menu Screen
If some of the data is not valid, display an error message to the user.
Update Cart Rent Screen
In this screen you will have the option to modify the data from a car rent record
Use the same validations from the Register new Cart Rent Screen
Update Customer
In this screen you will have the option to modify the data from a customer record
Use the same validations from the Register New Customer Screen
List Rents
In this screen you will list all the rents.
List Available Cars
In this screen you will list all the available cars.
This feature must querie a webservice which will be provided by the instructor
List Customers
In this screen you will list all the customers saved n our database.
Extra features
Below you will find a list of possible extra features that can be implemented once all
base features have been implemented.
Unit Testing
Implement a test suite for your methods to ensure quality.
Database Normalization
Modify your data tables so they are normalized.
Reports Screen
Create a new screen with one menu option per report. Each report will be
considered as an extra feature
Gold and Silver Customers rented a car at least 4x(Gold) or 2x(Silver) in the
last 30 days
Most recent rented cars
Most rented carts in a given month
Less rented carts in a given month