0% found this document useful (0 votes)
39 views

File Structure: Compound Pattern and Java. The System Is Made of The Following Entities

The document describes a movie rental management system that uses the MVC pattern. It stores information about clients, movies, and rentals in text files. The system allows users to create, delete, and search for clients. It also allows renting, returning, and searching for movie rentals. The system must enforce restrictions like a client renting no more than 3 movies at a time and not renting movies that are already rented. A class diagram and documentation is required describing the MVC components.
Copyright
© © All Rights Reserved
Available Formats
Download as DOCX, PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
39 views

File Structure: Compound Pattern and Java. The System Is Made of The Following Entities

The document describes a movie rental management system that uses the MVC pattern. It stores information about clients, movies, and rentals in text files. The system allows users to create, delete, and search for clients. It also allows renting, returning, and searching for movie rentals. The system must enforce restrictions like a client renting no more than 3 movies at a time and not renting movies that are already rented. A class diagram and documentation is required describing the MVC components.
Copyright
© © All Rights Reserved
Available Formats
Download as DOCX, PDF, TXT or read online on Scribd
You are on page 1/ 3

The objective of this project is to develop a movie rental management system using the MVC

compound pattern and Java. The system is made of the following entities:
1. Clients: They rent movies in the system. Clients are stored in a file called clients.txt.
2. Movies: These are the objects to be rented. Movies are stored in a file called movies.txt.
3. Rental_Info: These are the information about who rented which movie, the date of
rental, and date of return. Rental_Info are stored in a file called rental_info.txt.

File Structure
clients.txt
client_id; name; deleted
if deleted=0 then client is active in the system, if deleted=1 then the client is logically deleted.
Example:
3; Thomas Jefferson; 0
movies.txt
movie_id; movie_title; rented
if rented=0 then is not rented currently, if rented=1 is rented.
Example:
1; Altitude; 0
2; Alien vs Ninja; 0
rental_info.txt
rental_id; client_id; movie_id; date_out; date_in
date_out and date_in should be stored in format mm/dd/yyyy
if the movie has not been returned, then date_in is empty.
A record should be placed in this file every time a movie is rented, and a record is updated
every time a movie is returned.
Example:
1; 3; 1; 4/18/2016;
2; 3; 2; 4/18/2015; 4/19/2015
In the first case shown above, the client called Thomas Jefferson rented the movie Altitude on
4/18/2016
In the second case shown above, the client called Thomas Jefferson rented the movie Alien Vs.
Ninja on 4/18/2015 and returned it on 4/19/2015

Requirements
The system should be able to handle the following transactions with GUIs:
For Clients:
1. Create a client.
2. Delete a client. A client does not get physically deleted from the system. A flag in the
record in file just states if the client is “logically” deleted.
3. Search a client by last name, first name and show its information
4. Show all clients
For Movies
1. Create a movie.
2. Rent a movie.
3. Return a movie.
4. Show all movies, showing current rented movies first.
5. Show current rented movies.
6. Show who has historically rented a particular movie, sorting in descending order by date
of rental.
Restrictions
1. The interface for the system must be graphically, however the design must follow the
dynamics of the Model Viewer Controller design.
2. Every time the app starts, it should allow the system to find/choose the location of the
files.
3. A client can rent at most 3 movies at a time. If a client tries to rent a 4 th movie, the
system must tell the user that the client is unable to rent the movie.
4. The current rental business only keeps one copy of a movie. If the user tries to rent a
movie that is currently rented, the system must tell that the movie is not available.
Also Required:

A PDF document with the information about the classes as well as the class diagram
describing the components of the system. Your written document must explicitly
describe which components are the Model, which are the Controller(s), and which are
Viewers.

You might also like