Skip to content

aishadahesh/software_engineering_project

 
 

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

313 Commits
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Cinema Site Project

Overview

This project was developed as part of the Software Engineering course. It involves creating a management system for a movie theater chain called "LunaAura." The system enables users to browse movies, purchase tickets, buy streaming links for home viewing, and improve customer service.

Features

The system supports multiple user roles, including:

  • Network Manager
  • Branch Manager
  • Customer Service Worker
  • Content Manager
  • Customers
  • Guests

Guest & Customer Operations

1. Movie Browsing

  • View a list of movies currently showing in theaters.
  • View upcoming movies.
  • Access details such as the movie’s name, producer, main actors, summary, and an image.

Recording 2024-09-29 010005

2. Ticket Purchase

  • Purchase tickets for movies shown in theaters.
  • Select specific seats from a map of the theater hall.
  • Receive a digital ticket via email with movie details, theater location, and seating information.

purchaseticket

Email Recived:

image

3. Home Viewing Links

  • Purchase links for limited-time access to movies for home viewing.
  • Receive a streaming link via email with the movie’s name and link.

homwlinkpurchase

Email Recived:

image

4. Ticket Pass

  • Purchase a pass for 20 movie tickets at a discounted rate.
  • Use the pass at any theater in the chain, subject to seat availability.

MultiPurchase

Purchase using MultiTicket:

purchaselinkmulti

When a guest makes a purchase, they are converted to a customer.


Customer Operations

1. Customer Identification

  • Customers can be identified by their ID. LOGINUSER (2)

2. Customer Service

  • Submit complaints via the system.
  • Possible financial compensation for valid complaints.

Complain

3. Purchase Cancellation

  • Cancel movie tickets up to three hours before the showtime for a full refund.
  • Cancel movie tickets between three hours and one hour before showtime for a 50% refund.
  • Cancel home viewing packages up to one hour before the link becomes active for a 50% refund.

cancel purchase


Employee Access:

  • Employees log in with a username and password to access the full system.

WORKERLOGIN


Branch Manager Operations

1. Operational Tracking

  • Monthly reports on ticket sales by theater, pass sales, and home viewing package sales.
  • Complaint status reports available to both theater and network managers.

Network Manager Operations

1. Price Approval

  • Review and approve or deny pricing changes proposed by the content manager.

2. Operational Tracking

  • Generate monthly reports on ticket sales categorized by theater, as well as pass sales and home viewing package sales.
  • Access complaint status reports, which are available to both theater and network managers for effective oversight.

Content Manager

1. Edit Movie Details

  • Update and modify the details of movies, including titles, descriptions, and cast information.

EDITINGDETAILS

2. Price Modification

  • Adjust the prices of movies, which requires approval from the network manager before implementation.

EditPrice


Customer Service Operations

1. Handling Complaints

  • Customer service representatives are responsible for addressing complaints from customers.

2. Compensation Decisions

  • Customer service representatives have the authority to decide on financial compensation for customers based on the validity of the complaint.
  • Compensation includes refunds.

RespondComplain


Development Details

The system is to be developed in Java, with a distributed architecture. The first version will be operational via local network (LAN) and will not include an internet-based user interface. The project will be implemented using a client-server architecture with a relational database backend.


Team Collaboration

The project is to be developed collaboratively by all group members.

Setup Instructions

  1. Clone the repository:

    git clone <repository-url>
  2. Navigate to the project directory:

    cd <project-directory>
  3. Start the server:

    java -jar <server-file>.jar
    • Note: Insert your SQL password and host for the HTTP server configuration.
  4. Run the client:

  5. Choose your host and IP:

    • If running locally, keep it as the default:
      localhost:3000
    • If using ngrok, set the host and IP the same as your ngrok instance. For example:
      Host: 0.tcp.eu.ngrok.io
      Port: 10160
      
  6. You're now ready to go!



Contributing

  • Fork the repository and create a new branch for your feature or bugfix.
  • Commit your changes and open a pull request for review.

Contact

CALL 911
Link to TikTok

About

Cinema System

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Contributors

Languages

  • Java 98.8%
  • CSS 1.2%