Advanced level school Python programming. need helps
A customer needs to register as a member with Toys2Share and download the app before he/she can check out any bike from the booths. Toys2Share requires the following data from the customer: - Name - Contact Number - Credit Card Number - Membership Tier. The membership tier consists of three levels: Ordinary, Premier and VIP. The monthly fees for the three tiers are $1.00,$5.00 and $10.00 respectively. The customer may change his membership tier after each month. When a customer successfully checked out a bike, a rental transaction record has to be stored on the database consisting of the following information. - Customer that checks out the bike - The serial number of the bike - Check out date and time - Check out booth - Check in date and time - Check in booth - Rental fee The check in date/time and check in booth data are updated automatically upon check in at a Toys2Share booth. The rental fee is also calculated and updated based on the rounded-up number of hours that the customer has check out the bike and the rental rate.
The rental rate is based on the membership tier that the customer belongs to. The rental rates for the 3 tiers are as follows: In their daily operations, Toys2Share needs to send technicians to service those bikes whose last serviced date has exceeded six months. Toys2Share plans to include other types of rentals for their customers in the near future. This includes e-scooters, inline skates, drones and other new gadgets that the company may acquire. (a) Draw a normalised ERD of the data model for the relational database to be implemented for Toys2Share. The design of the data model must cater for the daily operational needs and future expansion plans of Toys2Share as described above. (b) Describe the relations in the data model. (c) When a customer wants to check out a bike from a Toys2Share booth, a rental record as described above, needs to be generated in the database. In order to maintain data accuracy and integrity, data validation needs to be performed on the data input by the user. Describe two validation techniques that can be use.
(d) When a customer wants to check out a bike, the self-service kiosk will use the following rules to determine whether the checkout is successful : - If a bike last serviced date is more than twelve months, the bike cannot be checked out. - If a bike's mileage is more than 1000 km, a warning message will be sent to advice the customer not to ride more than 20 km. - If it is an e-bike and the current battery charge is less than 50%, the bike cannot be checked out. - Otherwise, the bike can be checked out. (i) Draw a decision table to describe all the possible conditions and outcomes. (ii) Simplify the decision table in (i). (iii) Describe the simplified table in (ii) using a flow chart. You may use OUTPUT statement to describe the action to be taken.