21
easure in the job puts perfection in the work” Aristotle The team: Adriana Velicu Alexandru Diaconu Gabriel Musteata Project manager: Emanuela Cerchez Magenta Beauty Salon

“Pleasure in the job puts perfection in the work” Aristotle The team: Adriana Velicu Alexandru Diaconu Gabriel Musteata Project manager: Emanuela Cerchez

  • View
    216

  • Download
    1

Embed Size (px)

Citation preview

Page 1: “Pleasure in the job puts perfection in the work” Aristotle The team: Adriana Velicu Alexandru Diaconu Gabriel Musteata Project manager: Emanuela Cerchez

“Pleasure in the job puts perfection in the work”Aristotle

The team:Adriana VelicuAlexandru DiaconuGabriel Musteata

Project manager:Emanuela Cerchez

MagentaBeauty Salon

Page 2: “Pleasure in the job puts perfection in the work” Aristotle The team: Adriana Velicu Alexandru Diaconu Gabriel Musteata Project manager: Emanuela Cerchez

References

To carry out this project, we had several interviews with the owner, manager and one of the 2 cosmeticians of the Magenta Beauty Salon - Mrs. Mihaela Godun.

Magenta Beauty SalonStr. Pictorului nr. 4A, bl. K1, sc. C, Iasi, phone number: 0232236294

The documentation of the interviews was made after visiting websites of similar businesses, among which :http://store.yahoo.com/beautykliniek/http://www.coafura.3x.ro/http://www.getts.ro/

2/21

Page 3: “Pleasure in the job puts perfection in the work” Aristotle The team: Adriana Velicu Alexandru Diaconu Gabriel Musteata Project manager: Emanuela Cerchez

3/21 Statement of the Problem

Magenta Beauty Salon is a growing business. It has more and more clients and its owner wants to keep track of supplies (products and tools), treatments, sessions, appointments and clients and has a great interest in statistics (e.g. which are the most popular treatments during the hot summer days? in which time of the year are the most clients?).

Page 4: “Pleasure in the job puts perfection in the work” Aristotle The team: Adriana Velicu Alexandru Diaconu Gabriel Musteata Project manager: Emanuela Cerchez

4/21 Proposed Solution

To solve this problem, we are going to create a very efficient and user-friendly database which will store all the information Mrs. Mihaela needs.

Page 5: “Pleasure in the job puts perfection in the work” Aristotle The team: Adriana Velicu Alexandru Diaconu Gabriel Musteata Project manager: Emanuela Cerchez

5/21

To create an efficient database which will fulfill our client's needs, we must store the following information: CLIENT: id, first name, last name - REGULAR client: date of birth, phone number and a general description TREATMENT_TYPE: code, name, description and its branch (e.g. manicure/pedicure, cosmetics) TREATMENT: id, comments and an optional price change, which is a deviation from its normal cost, based on the particularities of that specific treatment; it is filled as the employee who applied it sees fit

Information Requirements

Page 6: “Pleasure in the job puts perfection in the work” Aristotle The team: Adriana Velicu Alexandru Diaconu Gabriel Musteata Project manager: Emanuela Cerchez

6/21 Information Requirements

APPOINTMENT: an id and its scheduled time (date modelled separately) SESSION: id, time of commencement and some global comments SUPPLIER: name, phone number SUPPLY: id, name - PRODUCT: quantity, producer PRICE: value and a start date, which will be explained later DAY: date and weather, mainly because our client is interested in the weather conditions of each day appointments are made / cancelled or sessions take place

Page 7: “Pleasure in the job puts perfection in the work” Aristotle The team: Adriana Velicu Alexandru Diaconu Gabriel Musteata Project manager: Emanuela Cerchez

7/21 Structural Rules

  An APPOINTMENT may be cancelled. All APPOINTMENTs are tracked (both attended and cancelled). The database must store the supplies in stock (SUPPLY_CLASS). A SUPPLIER may provide the salon with either TOOLs or PRODUCTs. There are some preset TREATMENT_TYPEs which have a code and a price. The preset TREATMENT_TYPEs have a listing of products used by default. A price belongs either to a TREATMENT_TYPE or a PRODUCT.

Page 8: “Pleasure in the job puts perfection in the work” Aristotle The team: Adriana Velicu Alexandru Diaconu Gabriel Musteata Project manager: Emanuela Cerchez

8/21 Structural Rules

A person becomes a SUPPLIER when he/she appears on a SUPPLY_LOG_ITEM for the first time. A PRODUCT represents a class of products (e.g. L'Oreal Dermo-Expertise Hydra-Renewal Daily Dry Skin Cream). It is not necessary to model the case in which CASUAL CLIENTs become REGULAR ones, because this change depends solely on the employees. The PRICE of a PRODUCT may change over time and it's necessary to keep track of its history. During a SESSION must be applied one or more TREATMENTs.

Page 9: “Pleasure in the job puts perfection in the work” Aristotle The team: Adriana Velicu Alexandru Diaconu Gabriel Musteata Project manager: Emanuela Cerchez

9/21 Procedural Rules

If a client is not satisfied with the result of a TREATMENT, the TREATMENT may be corrected at no extra charge. PRODUCTs and TOOLs can only be bought from SUPPLIERs. The salon sells PRODUCTs, but does not sell TOOLs.  If a person comes to the salon for the first time, but does not have an APPOINTMENT and the suitable employee is free at the time and agrees to apply that person the treatments he or she wants, then the person becomes a CLIENT that has one SESSION and no APPOINTMENTs. Only CLIENTs may buy PRODUCTs.

Page 10: “Pleasure in the job puts perfection in the work” Aristotle The team: Adriana Velicu Alexandru Diaconu Gabriel Musteata Project manager: Emanuela Cerchez

10/21

  If some global comments of a SESSION need to be made (that are not related to that SESSION's specific TREATMENT - e.g. something happens to a person and we do not know which TREATMENT caused it), they are stored in a short text, the SESSION's "global_comments“.  APPOINTMENTs are made by phone or at the center. A CLIENT may change the scheduled day & time for an appointment he made. If a scheduled SESSION (i.e. APPOINTMENT that is about to be attended) can not be held (e.g. because of lack of a necessary product type), then a new APPOINTMENT is made, and the old one is declared cancelled (by relating it to a day of cancellation').

Procedural Rules

Page 11: “Pleasure in the job puts perfection in the work” Aristotle The team: Adriana Velicu Alexandru Diaconu Gabriel Musteata Project manager: Emanuela Cerchez

11/21 Programmatic Rules

A TREATMENT's cost is computed by adding its price_changes to its TREATMENT_TYPE's PRICE (price_changes may be positive, negative or null). If an APPOINTMENT has a cancellation DAY, then it is cancelled. Otherwise, if the APPOINTMENT's scheduled DAY and time have not passed yet, then it is still pending; if the scheduled DAY and time have passed, then the APPOINTMENT was attended. 

Page 12: “Pleasure in the job puts perfection in the work” Aristotle The team: Adriana Velicu Alexandru Diaconu Gabriel Musteata Project manager: Emanuela Cerchez

12/21 Assumptions & Constraints

Each CLIENT receives an artificial ID when he/she makes his/her first APPOINTMENT or attends the first SESSION. A CLIENT is introduced in the database at the moment he/she makes an APPOINTMENT (even if the APPOINTMENT will later be cancelled) or attends a SESSION. Thus, a CLIENT may not lack both APPOINTMENTs and SESSIONs.  Each applied TREATMENT may deviate from its preset type by adding or removing products that are stored in "P_CHANGE_LIST_ITEM“.   A SUPPLIER is a person and not a company.

Page 13: “Pleasure in the job puts perfection in the work” Aristotle The team: Adriana Velicu Alexandru Diaconu Gabriel Musteata Project manager: Emanuela Cerchez

13/21 Assumptions & Constraints

  If extra price changes occur (e.g. changes caused by product addition / removal), their sum is stored in 'price_changes' and their explanation in 'comments' (of treatment).  There can exist two SUPPLIERs with the same name. A SUPPLIER may supply either TOOLs or PRODUCTs. A PRODUCT SUPPLIER may only supply PRODUCTs from one company. The id of a session must be the same as the appointment which preceded it, if any did. A SESSION may not be related to a day which has not passed yet.

Page 14: “Pleasure in the job puts perfection in the work” Aristotle The team: Adriana Velicu Alexandru Diaconu Gabriel Musteata Project manager: Emanuela Cerchez

14/21 Assumptions & Constraints

  If a SESSION has no APPOINTMENT associated, it gets an id with a value that no APPOINTMENT uses in its "id" field. The 'weather' attribute is null if it belongs to a DAY that has not passed yet (i.e. scheduled day for an APPOINTMENT) and must hold a value otherwise. A day must have a relation with a SESSION, an APPOINTMENT or both. Type of the P_CHANGE_LIST_ITEM may be only 'added' or 'removed', reflecting if the product was added to, respectively removed from the treatment. A DAY that has not passed yet, may not be the DAY of creation/cancelation for any APPOINTMENT.  

Page 15: “Pleasure in the job puts perfection in the work” Aristotle The team: Adriana Velicu Alexandru Diaconu Gabriel Musteata Project manager: Emanuela Cerchez

ERDMAGENTA

BEAUTY

SALON

Page 16: “Pleasure in the job puts perfection in the work” Aristotle The team: Adriana Velicu Alexandru Diaconu Gabriel Musteata Project manager: Emanuela Cerchez

16/21 Explanations

All the particularities of a given past TREATMENT are noted in the TREATMENT’s “comments” attribute.Full_date = date and time.CPP = Client Product Purchase.TP = Treatment - Product.TTA = Treatment Type – Appointment.P_CHANGE = Price Change.

Page 17: “Pleasure in the job puts perfection in the work” Aristotle The team: Adriana Velicu Alexandru Diaconu Gabriel Musteata Project manager: Emanuela Cerchez

17/21 Sample of Information

SCS = SUPPLY_CLASSSPR = SUPPLIER  

  

 

SUPPLY_LOG_ITEMS

full_date quantity price_per_unit discount scs_id spr_name

14/06/2004 10:30

20 235.000 lei 5% 12 Harasim Dumitru

23/06/2004 17 :00

3 600.000 0% 20 Porcaru Maria

29/07/2004 8:00

13 573.000 lei 10% 6 Tilea Margareta

17/08/2004 19:00

10 235.000 lei 0% 12 Harasim Dumitru

Page 18: “Pleasure in the job puts perfection in the work” Aristotle The team: Adriana Velicu Alexandru Diaconu Gabriel Musteata Project manager: Emanuela Cerchez

 

SUPPLIERS

name phone_number

Harasim Dumitru 0745388691

Porcaru Maria 0788325147

Tilea Margareta 0721589610

Vlad Gheorghe 0723984061

Zaharia Paulina 0743009007

18/21 Sample of Information

Page 19: “Pleasure in the job puts perfection in the work” Aristotle The team: Adriana Velicu Alexandru Diaconu Gabriel Musteata Project manager: Emanuela Cerchez

19/21 Sample of InformationSCD = SCHEDULEDCND = CANCELLEDCAD = CREATEDCET = CLIENT 

APPOINTMENTS

id time scd_on cad_on cnd_on cet_id

342 10:15 02/08/2004 29/07/2004 31/07/2004 20

343 10:30 02/08/2004 31/07/2004   205

344 10:30 02/08/2004 31/07/2004   106

345 14:15 03/08/2004 31/07/2004   59

346 13:00 02/08/2004 31/07/2004 02/08/2004 193

347 09:40 04/08/2004 02/08/2004   357

  Query: In which period of 7 days did the salon have most appointments?Result: 19/08/2004 – 25/08/2004 .

Page 20: “Pleasure in the job puts perfection in the work” Aristotle The team: Adriana Velicu Alexandru Diaconu Gabriel Musteata Project manager: Emanuela Cerchez

20/21

We are delighted that you have tasted a bit of our REVOLUTION.

Page 21: “Pleasure in the job puts perfection in the work” Aristotle The team: Adriana Velicu Alexandru Diaconu Gabriel Musteata Project manager: Emanuela Cerchez

21/21