dbsys.info

Bilutleie

Oppgaven tar for seg utvikling av et utleiesystem for et bilutleiefirma.

Databasen

Databasen skal lagre opplysninger om kunder, kjøretøy og utleieforhold.

Om hver kunde skal det registreres et unikt kundenummer, fornavn, etternavn og et telefonnummer.

Registreringsnummer, merke, modell og registreringsår blir lagret for alle kjøretøyer. Hvert kjøretøy er plassert i en priskategori. En priskategori bestemmer både kilometerpris og døgnpris.

Hvert utleieforhold gjelder nøyaktig én kunde og ett kjøretøy, og tildeles et unikt og autonummerert utleienummer. Om et utleieforhold blir det også lagret tidspunkt og kilometerstand ved utlevering og innlevering.

Forretningsregler

Følgende forretningsregler skal gjelde i databasen:

For de to siste forretningsreglene kan man forutsette at alle utleieforhold blir registrert når kjøretøyet leies ut, og at innleveringstidspunkt og kilometerstand ved innlevering blir oppdatert når kjøretøyet leveres inn.

Funksjonalitet

Det er ønskelig å utvikle en web-applikasjon med funksjonalitet for registrering av følgende opplysninger:

Det skal også være mulig å ta ut følgende rapporter fra applikasjonen:

Oppgaver

  1. Lag en begrepsmessig datamodell (ER-diagram) for utleiesystemet.
  2. Oversett den begrepsmessige modellen til en logisk datamodell, altså en tabellstruktur med primærnøkler og fremmednøkler.
  3. Lag et SQL-skript som definerer databasetabellene og setter inn eksempeldata.
  4. Sørg for at forretningsreglene beskrevet over blir overholdt, enten ved bruk av CHECK-regler eller ved triggere. Test reglene.
  5. Programmer lagrede rutiner for innsetting, oppdatering, sletting og uthenting av priskategorier.
  6. Skriv SQL utvalgsspørringer for rapportene.
  7. Som en start på web-applikasjonen:
    1. Lag HTML-skjemaer og tilhørende PHP-skript for å opprette et nytt utleieforhold samt for å håndtere innlevering av kjøretøy.
    2. Lag et PHP-skript som viser alle data om samtlige kjøretøy som en HTML-tabell.