Dere får nå i oppdrag å lage et datasystem for et firma som driver med boligformidling for utleiemarkedet. Firmaets kunder vil være utleiere og boligsøkende. Ved hjelp av applikasjonen, der utleieboliger og boligsøkende er registrert, skal ansatte firmaet fomidle kontakt mellom disse to aktørene i markedet.
Utleiere vil få sine boligtilbud presentert og får derved hjelp til å nå potensielle leietakere. Boligsøkende registrerer på sin side sine ønsker og krav til en eventuell bolig, samt personlige opplysninger som kan ha betydning for utleieren, og får derved hjelp til å finne en egnet bolig. Ved å matche ledige boliger mot de boligsøkendes beskrivelser skal firmaet informere sine kunder om aktuelle leietakere og boliger. Hvordan denne informasjonen skal gis, har ikke oppdragsgiver noen klar formening om, men håper dere kan finne en passende løsning. Firmaet skal registrere alle leieforhold som opprettes, slik at boligen og leietakeren da ikke lenger vil være registrert som henholdsvis ledig og boligsøkende. For at firmaet skal kunne videreutvikle sin forretningsíde og strategi, ønsker de at programmet skal lagre all historikk nyttet til leiekontrakter som har blitt inngått i firmaets regi. Oppgavens størrelse vil være avhengig av hvor mye av oppdragsgiverens krav og ønsker dere implementerer. For mange vil oppgaven bli FOR omfattende hvis alt skal implementeres fullt ut. Her vil også antall studenter i prosjektgruppa spille inn (se ovenfor om hva det legges vekt på ved sensurering). En av utfordringene blir derfor å gjøre fornuftige valg med hensyn til hva som implementeres og hva som kan utelates. Når programmet har vært i drift en stund vil det erfaringsmessig gjerne dukke opp ønsker og behov for utvidet eller ny funksjonalitet. Der er derfor viktig at programmet lett lar seg vedlikeholde og bygges ut uten at det trengs å gjøres vesentlige forandringer i den eksisterende koden. I spesifikasjonene nedenfor har oppdragsgiveren kommet med forslag til hva som bør være med i programmet. Oppdragsgiver ønsker imidlertid at dere skal komme med forslag til andre ting dere synes er viktig å ta med, og vedkommende er også åpen for å legge til annen/mer funksjonalitet. Dere står med andre ord fritt til å legge til og trekke fra alt etter som dere finner det hensiktsmessig. Det er imidlertid viktig at dere i kravspesifikasjonen og i den endelige dokumentasjonen beskriver hvilke forandringer dere har gjort i forhold til de opprinnelige ønskene, og hvordan dere har prioritert.
Det er et krav at programmet skal være interaktivt og lett å bruke.
Firmaet navn og navnet på programmet velger dere selv.
I det følgende står en nærmere spesifikasjon av oppdragsgivers ønsker.
Det er umulig å forutsi hvor mange utleieboliger og boligsøkere det kan bli behov for å registrere. Programmets datastruktur må derfor ikke sette noen begrensninger på antallene.
Det er to typer personer som skal registreres i programmet. Den ene er utleieren og den andre er den boligsøkende.
For alle personer ønskes følgende data registrert:
For utleiere ønskes det dessuten registrert
For boligsøkere ønskes det, i tillegg til det som er felles for alle personer, registrert
For hver utleiebolig skal følgende data registreres:
For eneboliger og rekkehus ønskes det dessuten registrert
For leiligheter ønskes i tillegg til det som er felles registrert
For å kunne yte service overfor eventuelle kunder, ønsker firmaet et system som lett skal kunne hente ut opplysninger om en eller flere boliger. Foruten å få informasjon om en bestemt bolig, ønsker de å kunne skrive ut boligopplysninger ut fra beliggenhet, boligtype, boareal, antall rom og utleiepris pr. mnd. osv. Etter hvert vil det trolig bli behov for å utvide denne tjenesten slik at man kan søke etter boliger ut fra mer spesielle kriterier som f.eks. - Alle 3-roms leiligheter oppført etter 2000 med utleiepris under 15000,-. Eller: - Alle boliger av en valgt type lagt ut for utleie før/etter en gitt dato. I første omgang nøyer imidlertid firmaet seg med følgende ønsker om uthenting av informasjon:
Firmaet ønsker å kunne hente ut følgende personopplysninger:
Firmaet er interessert i raskt å kunne få ut opplysninger om
For at dataene som ligger lagret i programmets interne datastruktur ikke skal gå tapt når programmet avsluttes, må alle data lagres på fil. Lagring på fil må foretas i forbindelse med hver programavslutning. Det kan dessuten være ønskelig å kunne foreta lagring på fil også under programmets kjøring.
Hver gang programmet startes, må alle dataene som ligger lagret på fil leses inn i programmets interne datastruktur.
Tips til slutt! For inspirasjon kan det være lurt å ta en titt på tilsvarende sider på nettet, f.eks. finn.no.