Input sales system for films (Moviepass)
Final Project for Laboratory 4 and Systems Methodology , of the University Technology career in programming , UTN .
This work is part of an exam, so external collaborations are not allowed, but any suggestion is welcome.
The team
@Fran, @Maxi, and @jorge.
Slogan
Functional requirements
A company that is dedicated to organizing and selling film tickets asks for the development of software that allows its customers to buy the ticket for a film in a certain cinema through a website. Customers must register with their email and a key. There must also be the possibility of registering via your Facebook account.
- The client (c) can carry out the following activities:
- Check movies by date and/or category.
- Select a movie for purchase. Next, the cinemas where it is projected with their schedules (only those that still have available tickets) will be visualized. Once selected schedule and cinema, the number of tickets to be purchased must be detailed, visualizing the total purchase. The purchase can only be made by credit card, through a process that will request the authorization of the payment to the CORRESP. CIA of Credit (Visa or Master) Upon receiving authorization from the payment, the system generates the entries, sending a copy to the email. Each entry will have a number and QR code that will allow you to enter the cinema (individual entrance). There is a discount policy on the site that consists of charging 25% less the value of the tickets on Tuesday and Wednesday, and must buy 2 tickets.
- Consult the entries acquired, ordered by film or by date.
- The administrator (a) will be able to carry out the following activities:
- Enter movies to the cinema billboard with your days and projection schedules.
(New Req.):
- A film can only be projected in a single cinema per day (but cannot be reproduced in more than one movie theater. Revision 3)
- Validate that the beginning of a function is 15 minutes after the previous one.
- Manage cinemas. Each record must have the name of the cinema, its total capacity, address and unique entry value.
(New Req.):
The structure of cinemas is modified. From now on they have more than one room where functions are performed. Within the cinemas administration, new rooms must be created. Each room has: name, price and capacity in seats.
- Consult amounts sold and remnants of the projections (film, cinema, shift).
- Consult total sold in pesos (by film or cinema, between dates).
Non -functional requirements
Programming in layers of the application respecting the architecture of 3 logical layers seen during the course. This implies the development of the classes representing the model entities and controllations of the use cases, the views and the data access layer. Access to films and categories (themes) of them will be made through the use of a public API of the Themoviedb site, where the student must create an account and thus obtain the necessary API needed to access the resources detailed at https://developers.themoviedb.org/3. From there we will use the get:
- movie/now_playing : retorna la lista de películas actuales
- genre/movie/list : retorna la lista de géneros (temas)
Minimum implementation for approval:
- Revision
- Administer cinemas (A- item B, with memory in memory)
- Consultation of current films (C- item a - Get of the API)
- Revision
- Enter movies to the cinema billboard along with the exhibition days and schedules (A - Item a)
- Add to 1.2 filters by category (topics) and dates of the function. ** From here in more, the films that the client visualizes in the consultation will be those that are on the billboard (cinemas acting, from the day of the consultation -Now-)
- The damage must be implemented against the BD. **
- Revision
- Select and buy tickets for a specific film projection (C - Item B, without payment or discounts)