ИЕП/К1 2024

Извор: SI Wiki
Пређи на навигацију Пређи на претрагу
Овај рок није решен. Помозите SI Wiki тако што ћете га решити.

Први колоквијум 2024. године одржан је 18. марта 2024 и трајао је 90 минута.

Поставка

Компанија за продају улазница пружа подршку организацији догађаја у различитим објектима. Догађај се планира за одређени датум, али касније из неког разлога може бити отказан. Објекти у којима се догађаји одржавају су конфигурисани тако да имају секторе, а у оквиру сектора редове. Пре него се отпочне са продајом, улазнице се креирају у систему ткао што се за сваки ред у сваком сектору креира онолико карата колико има седишта у реду и карте се том приликом проглашавају важеће. На дан догађаја, улазнице су у слободној продаји, док је пре датума догађаја могућа претпродаја и тада улазнице могу куповати само регистровани купци и то максимално по три улазнице за један догађај. За регистроване купце постоји попуст, тако да након одређеног укупног броја купљених улазница остварују право на одређени попуст на званичну цену улазница. Догађаји могу бити повезани тако да чине ланац догађаја. Куповина је могућа само пре првог догађаја у ланцу и том приликом се нуди куповина карата за сваки од догађаја. Званична цена улазнице се формира тако што се основна цена (која се дефинише на нивоу догађаја) помножи фактором сектора и фактором реда.

OBJEKAT(SifO,Naziv)
SEKTOR(SifS,Oznaka,BrojRedova,FaktorS, SifO)
RED(SifR,Broj,BrojSedista,FaktorR,SifS)
DOGADJAJ(SifD,Naziv,Datum,Opis, OsnovnaCena)
DOGADJAJ_OTKAZAN(SifD,Razlog)
ULAZNICA(SifU,SedisteBr,SifR,ZvacnicnaCena)
KUPAC(SifK,Ime)
POVEZANI(SifDa,SifDb)
KUPIO(SifU,SifK,Cena)
VAZI(SifU,SifD)
POPUST(BrojKarata,Popust)

Razlog: I - otkazao izvođač, O - otkazao organizator
  1. Навести по један пример сваког документа уколико би се за потребе наведене евиденције користила база података заснована на документима (mongoDB), али тако да модел искористи све предности нерелационог модела података.
  2. Саставити скрипт који користећи функцију за агрегацију (aggregation framework) враћа шифре и називе оних догађаја које имају продатих преко 400 улазница са попустом.
  3. Саставити Map/Reduce посао који за сваки датум за који постоји бар један догађај враћа информацију о проценту отказаних догађаја.

1. задатак

2. задатак

3. задатак

Тестирање