Systém rezervace letenek
1.1. Deklarace záměru
Cílem našeho projektu je utvořit ucelený systém, umožňující v reálném čase správu letenek. Mimo klasických operací v zákaznických centrech, systém nabízí alternativní možnosti manipulací a rezervací on-line (tj. přes internet). Systém bude též poskytovat důležité statistické údaje nezbytné pro další rozvoj společnosti vlastnící tento systém (např. vytížení letů, slevy...). Systém bude plně podporovat individualitu uživatele a země "nasazení". Samozřejmostí je evidence zákaznických dat a systém poskytování slev. Náš systém neimplementuje systém plateb, pouze registruje potvrzení plateb.
POZN. AUT.: Tak to je zatim všechno ... dejte mi vedet jestli si myslíte, že tam má bejt ještě něco.
(verze 2, upraveno po cvičení - 6. týden)
1.2. Odborný článek
Námi vyvíjený systém je systém pro podporu operací zákazník - společnost.
Zadavatel dodal dokumentaci ke stávajícímu rozhraní jejich informačního systému, který pokrývá správu letadel a lidských zdrojů a systém plateb za letenky.
Primárním úkolem našeho systému buď on-line rezervace letenek. Ta se skládá obvykle z něklolika kroků.
1) Zjistit zdali existuje spojení z místa A do B, (A source B dest, v určenou dobu). Zjištění se provede na základě komunikace se stávajícím informačním systémem zadavatele.
Je-li tomu tak, výsledkem budiž id. číslo letu, neexistuje-li požadované spojení můžeme potencionálního zákazníka odkázat služby spřátelené letecké společnosti.
2) Rezervace letenky
Zákazník musí zadat id. číslo letu. Jsou-li na daný let vůbec volná místa, je třeba zjistit některé osobní údaje zákazníka (celé jméno, číslo pasu, země, pro mezinarodní lety - pro vnitrostatní stačí RČ či id pasu u cizinců), dále zákazník specifikuje, kterou třídou chce letět (bussiness class, tourist class), a zdali chce letět jako kuřák nekuřák. Zákazník se vyrozumí zda existuje takové místo v letadle, které se kryje s jeho požadavky. Případně se mu nabídnou alternativní řešení. (stejný let kuřák x nekuřák, tourist x busssines, pak už jedině let později.) Po dokončení této procedury je na daný let rezervováno místo a zákazník dostane rezervaci. K idetifikaci zákazníka lze užít unikátní čislo. To buď výstupem této fáze.
3) Potvrzení rezervace
Rezervaci je nutno potvrdit nejdéle 1 den před vlastním odletem. Potvrzením rezervace se rozumí zaplacení příslušné částky za letenku. Platba se provede přes stávající informační systém zadavatele, který následně našemu Systému rezervace letenek platbu potvrdí. Možné způsoby platby za letenky závisí opět na stávajícím IS zadavatele. Letenka je stále "papírová".
Pokud si po potvrzení rezervace zákazník cestu rozmyslí, lze provést dodatečné zrušení rezervace a navrácení peněz za letenku (snížené o storno-poplatek; ten je stanoven opět zadavatelem). Pokud potvrzení rezervace (tj. zaplacení) neproběhne v čase uvedeném výše, Systém rezervace letenek rezervaci zruší a místo se uvolní.
4) Vyzvednutí letenky
Letenku si je možno vyzvednout kdykoli mezi jejím potvrzením (zaplacením) a odletem. Klient se prokáže jménem a RČ případně číslem pasu dle předchozí registrace.
Data poskytnutá zákazníkem se využijí jednak ke statistickým učelům a také pro systém slev zákazníkům. Velikost slevy je záležitost společnosti a není tedy součástí systému. Systém poskytuje možnost plného nastavení této politiky slev uživatelem systému. (slevy na určistou linku, soc. skupinu, skupinu cestujicích v rámci jednoho letu nebo dle procestovaných peněz)
Klient letecké společnosti bude mít možnost užít moderní technologie (internet, mob. telefon) při rezervaci a manipulaci s rezervací. Její platbu a vyzvednutí letenky musí vyřídit na pobočce let. společnosti.
(verze 4, by Ruda, upraveno by K.D. - potvrzení = zaplacení)
1.3. Kontextový diagram
Popis rolí:
(verze 2, 18.4.02 dodal Fanda, již doplněny popisy jednotlivých rolí)
1.4. Datový slovník
osoba = @id_osoby + jmeno + prijmeni + RC + adresa + login
adresa = ulice + c_p + mesto + stát
zakaznik = osoba + jmeno_spolecnosti + cislo_pasu + jmeno_spolecnosti
zamestnanec = osoba + role
login = passwd + user_name
jmeno = velke_pismeno + {male_pismeno}
prijmeni = velke_pismeno + {male_pismeno}
ulice = velke_pismeno + {male_pismeno}
mesto = velke_pismeno + {male_pismeno}
stat = velke_pismeno + {male_pismeno}
trasa = start_letiste + cil_letiste
start_letiste = velke_pismeno + {male_pismeno}
cil_letiste = velke_pismeno + {male_pismeno}
male_pismeno = [ a | b …… x | y | z ]
velke_pismeno = [ A | B ……X | Y | Z]
passwd = {{male_pismeno} + {velke_pismeno}}
user_name = {{male_pismeno} + {velke_pismeno}}
RC = * rodné číslo *
c_p = * číslo popisné *
cislo_pasu = * 7-mi místné číslo *
cislo = {digit}
digit = [ 0 | 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 ]
role = * pracovní role zaměstnance *
rezerv_prodej_letenky = @id_rez_pro + datum_rezev + datum_prodeje + datum_vydani + (trida) * rezervace a prodej letenek *
datum = rok + mesic + den
datum_rezev = rok + mesic + den
datum_prodeje = rok + mesic + den
trida = [obchodni | turisticka ] + [ kuracke | nekuracke]
letiste = @id_letiste + nazev_letiste + adresa + (kontakt)
nazev_letiste = velke_pismeno + {male_pismeno}
kontakt = [telefon | fax ]
let = @id_letu + typ_letadla + kapacita + datum + trasa + (doba_letu) + (vzdalenost)
typ_letadla = * výrobní označení letadla *
kapacita = * počet přepravitelných pasažérů *
letenka = @cislo_sedadla + @id_letu + cena + trida
cislo_sedadla = * celé číslo z množiny 1 … Kapacita *
cena = * částka, kterou ma zakaznik zaplatit *
rezervace_letenky = zakaznik + @id_rez_pro + (trida)
cislo_rezervace = @id_rez_pro
prodej_letenky = zakaznik + @id_rez_pro + zamestnanec
Syntaxe:
X = Y | X se skládá z Y |
Z = X + Y | Z se skládá z X a Y |
Z = X + (Y) | Z se skládá z X a případně z Y |
Z = {X} | Z se skládá z několika X |
Z = [X | Y] | Z se skládá z X nebo z Y |
@ | klíčová položka |
* text * | komentář |
(verze 5, 30.04.02 dodal Míra + Ruda, úprava diakritiky by K.D., přepracováno pro ER-model)
1.5. Návrh rozpočtu
Pro náš Systém rezervace letenek potřebujeme (internetový) server.
Předpokládejme, že společnost je dostatečně vybavena pracovními stanicemi schopnými komunikace s internetovým serverem. Dále předpokládáme, že zadavatel má dostatečně rozvinutou svoji podnikovou síť (např. alespoň 100Mbps switched jádro) s dostatečně rychlým pevným připojením na Internet (např. vyhrazené nelimitované mikrovlnné spojení @ 256 kbps apod.)
Náš server bude komunikovat s již existujícím informačním systémem zadavatele.
Hlavní požadavky na server jsou stabilita, dostatečne velká operační paměť a rychlé síťové rozhraní do stávající počítačové sítě zadavatele.
Jako software použijeme open source produkty, z důvodu větší stability a téměř nulové pořizovací ceny.
Jako server použijeme dostatečně výkonnou značkovou sestavu COMPAQ ProLiant ML530T01 P-III Xeon 1000/256k 256 MB, RAID SMART 5300/3. Tento server lze dle aktuální nabídky pořídit za cenu 255322,- Kč (vč. DPH).
Pro sestaveni rozpočtu byla použita metoda COCOMO. Za základ výpočtu ceny systému je brán hrubý odhad počtu instrukcí pro realizaci projektu. Započítány nejsou náklady na údržbu systému. Odhadovaný rozsah projektu je zhruba 5 tisíc instrukcí. Jedná se o řešení varianty znamého problému s menšími variacemi, použijeme tedy "organický mód COCOMO".
Předpokládaný plat je 30000,- Kč na osobu za měsíc.
Faktory COCOMO | |
spolehlivost: | 1 |
rozsah dat: | 1 |
složitost: | 1 |
pamětové omezení: | 1 |
stabilita počítače: | 1 |
rychlost odezvy: | 1 |
znalosti a zkušenosti analytika: | 1,19 |
znalost aplikace: | 0,91 |
zkušenosti a schopnosti programátorů: | 0,86 |
znalost virtuálního počítače: | 1 |
znalost programovacího jazyka: | 0,95 |
moderní programovací metody: | 1 |
použití programových nástrojů: | 1 |
časový plán: | 1 |
Kd = 3.2 * 51,05 * 1.19 * 0.91 * 0.86 * 0.95 = 15.3 člověko-mesíců
td = 2.5 * 15.30.38 = 7 měsíců
N = 15.3 / 7 = 2 osoby
C = 2 * 7 * 30000=420000,- Kč
C + 20% = 504000,- Kč
Celkový rozpočet | ||
hardware | : | 255322,- |
software | : | 0,- |
vývoj | : | 504000,- |
celkem | : | 759322,- |
(verze 2, dodal Jindra, sestavu serveru upravil Kamil D.)
1.6. Harmonogram, matice zodpovědnosti
Harmonogram prací na projektu a matice zodpovědnosti je ZDE.
(verze 2, dodal J. Frič, upravil J. Frič a K. Dlouhý)
ZPĚT na hlavní stránku projektu... | Poslední změna: |