Sustav Udomljenika Podesivih Za Potrošačko Financijsko Upravljanje
Total Page:16
File Type:pdf, Size:1020Kb
SVEUČILIŠTE U ZAGREBU FAKULTET ELEKTROTEHNIKE I RAČUNARSTVA Diplomski rad br. 86 Sustav udomljenika podesivih za potrošačko financijsko upravljanje Tomislav Lugarić Zagreb, lipanj, 2010. Zahvaljujem mentoru prof. dr. sc. Siniši Srbljiću za priliku da radim na jednom zanimljivom, atraktivnom i poticajnom projektu. Zahvaljujem mr. sc. Miroslavu Popoviću za brojne savjete i smjernice tokom pisanja rada. Zahvaljujem kolegama s Ekonomskog fakulteta u Zagrebu Vjekoslavu Mesarošu i Jurici Štimcu za savjete pri razvoju sustava, pomoć oko literature i vrijeme utrošeno na projektu. Zahvaljujem dr. sc. Blanki Krauthacker za pomoć pri pisanju, ispravljanju i oblikovanju rada. Zahvaljujem kolegi Zvonimiru Pavliću za pomoć pri izgradnji programske potpore ovom radu. Zahvaljujem svojoj djevojci Gordani, kao i cijeloj obitelji za potporu i razumijevanje. 1 Sadržaj 1. Uvod..................................................................................................................... 3 2. Financijska analiza i upravljanje.......................................................................... 5 2.1 Metode financijske analize ................................................................................ 5 2.2 Upravljanje investicijama .................................................................................. 8 2.3 Postojeći portali za financijsku analizu i upravljanje ........................................ 8 2.2.1 Portali za pregled informacija..................................................................... 8 2.2.2 Portali s mogućnošću prilagodbe potrošaču ............................................. 12 2.2.3 Portali s mogućnošću upravljanja investicijama....................................... 13 3. Korištene tehnologije......................................................................................... 16 3.1 Tehnologije ostvarenja programske logike u pregledničkom sustavu............. 16 3.1.1 Jezik JavaScript......................................................................................... 16 3.1.2 Udomitelj udomljenika Apache Shindig i specifikacija OpenSocial........ 18 3.2 Tehnologije ostvarenja programske logike u poslužiteljskom sustavu ........... 20 3.2.1 Okružje .NET i jezik C# ........................................................................... 20 3.2.2 Tehnologija ASP.NET.............................................................................. 23 3.2.3 Usluga Google Chart API......................................................................... 24 3.3 Tehnologije za povezivanje korisničkog i poslužiteljskog sustava ................. 28 3.3.1 Arhitektura SOA i tehnologija WS-*........................................................ 28 3.3.2 Alat Geppeto............................................................................................. 33 4. Arhitektura ostvarenog sustava za financijsko upravljanje ............................... 36 4.1 Arhitektura sustava .......................................................................................... 36 4.2 Arhitektura udomljenika.................................................................................. 39 4.3 Arhitektura web usluga.................................................................................... 44 4.4 Standardni zapis za tablične podatke............................................................... 46 5. Ostvarenje sustava za financijsko upravljanje................................................... 48 5.1 Zahtijevane funkcionalnosti sustava za financijsko upravljanje...................... 48 5.2 Organizacija usluga, udomljenika i toka podataka u sustavu .......................... 49 5.3 Dobava podataka.............................................................................................. 53 5.3.1 Općenite funkcionalnosti .......................................................................... 53 5.3.2 Funkcionalnosti specifične za ekonomsku analizu................................... 54 5.4 Obrada podataka .............................................................................................. 55 5.4.1 Općenite funkcionalnosti .......................................................................... 56 5.4.2 Funkcionalnosti specifične za ekonomsku analizu................................... 61 5.5 Prikaz podataka................................................................................................ 64 5.5.1 Općenite funkcionalnosti .......................................................................... 64 5.5.2 Funkcionalnosti specifične za ekonomsku analizu................................... 66 5.6 Ostvarenje programske klase za rukovanje standardnim zapisom podataka... 67 5.7 Vanjski izvori podataka ................................................................................... 69 5.8 Ostvarenje web usluga..................................................................................... 70 6. Zaključak ........................................................................................................... 71 7. Literatura............................................................................................................ 73 Sažetak....................................................................................................................... 76 Summary.................................................................................................................... 77 2 1. Uvod Sve veći razvoj globalne računalne mreže Internet, kao i sve veća raširenost osobnih računala donose sa sobom promjenu u načinu na koji potrošači razmišljaju o aplikacijama i njihovim mogućnostima. Potrošačke mreže (engl. consumer networks) razvijaju se, te pokrivaju sve šira područja primjene poput trgovine, analize ekonomskih podataka, meteorologije, te socijalnih aktivnosti [1]. Aplikacija koja bi imala visoku kvalitetu doživljaja (engl. QoE, Quality of Experience) morala bi biti što prilagođenija potrošaču. U pristupu u kojem profesionalni programeri razvijaju aplikacije za amatere, to jest prosječne potrošače, programeri teško mogu predvidjeti sve zahtjeve potrošača. Osoba koja je najbolje upućena u želje potrošač je sam taj potrošač. Kada bi se potrošaču dalo alat koji on može razumjeti, a koji je ujedno po svojim mogućnostima mjerljiv s programskim jezicima, potrošač bi bio u mogućnosti razviti aplikaciju visoke kvalitete doživljaja. Potrošači ne razumiju elemente programskih jezika poput tipova podataka, funkcija, rekurzija i grananja, te se takvi konstrukti moraju od njih sakriti odgovarajućim sučeljima koja oni mogu razumjeti. Potrošači razumiju grafička sučelja web stranica, te se sakrivanje programskog koda može ostvariti udomljenicima. Udomljenici su male web stranice koje mogu prikazivati određene podatke, biti sučelja prema uslugama pisanima klasičnim programskim jezicima poput jezika Java, C# ili Visual Basic. Alat Geppeto ostvaruje paradigmu prilagođenu potrošaču, koja se temelji na udomljenicima kao građevnim blokovima. Potrošač može povezivati sučelja udomljenika u sve složenije nove udomljenike, te tako razviti aplikaciju prema svojim željama. U ovom radu opisan je sustav za potrošačko financijsko upravljanje. Sustav se temelji na udomljenicima kao građevnim elementima. Pri razvoju sustava vođeno je računa o mogućnostima postojećih sustava za dohvat financijskih podataka i njihovu analizu. Operacije analize i obrade financijskih podataka dekomponirane su u manje logičke cjeline te je svaka od njih ostvarena jednim udomljenikom. Potrošač koristeći alat Geppeto povezuje udomljenike u funkcionalnu aplikaciju formirajući vlastite tokove podataka. U drugom poglavlju opisani su pojedini postojeći sustavi za dohvat financijskih podataka, njihovu obradu i prezentaciju, te za financijsko upravljanje. Prikazane su mogućnosti definiranja vlastitih pravila te reagiranja na određene događaje u sustavu. U trećem poglavlju opisane su tehnologije korištene za izradu sustava. Opisani su jezik 3 JavaScript i knjižnica OpenSocial, koji su korišteni za razvoj udomljenika na klijentskoj strani. Opisan je jezik C# i platforma .NET, koji su korišteni za razvoj web usluga na poslužiteljskoj strani. Opisana je arhitektura sustava baziranog na uslugama (engl. Service Oriented Architecture – SOA), koja je korištena za povezivanje udomljenika i usluga. Opisan je alat Geppeto, koji se koristi za međusobno povezivanje udomljenika u aplikaciju. U četvrtom i petom poglavlju opisano je programsko ostvarenje sustava za financijsko upravljanje koji je rezultat ovog rada. Četvrto poglavlje opisuje arhitekturu sustava, a peto ostvarenje, funkcioniranje pojedinih dijelova. Na kraju je iznesen zaključak rada. 4 2. Financijska analiza i upravljanje Svaka tvrtka uvrštena na tržište vrijednosnih papira predmet je interesa nekoliko grupa osoba. Među tim pravnim i fizičkim osobama su zaposlenici, uprava, banke, vlasnici dionica tvrtke te vlasnici obveznica [2]. Svim ovim osobama ocjena položaja tvrtke na tržištu važna je pri odlukama o ulaganju u tvrtku, davanje kredita tvrtki, kao i o tome što tvrtka može ili ne može poduzimati u budućnosti. Osim podatka o trenutnoj i povijesnoj cijeni dionice tvrtke, koji se može dobiti na burzi na koju je dionica uvrštena, dostupna su i periodička financijska izvješća. Podaci o cijenama dionica koriste se u tehničkoj analizi, koja u ovom radu nije obrađivana. Podaci iz periodičkih financijskih izvješća koriste se u financijskoj analizi. U ovom poglavlju opisane su metode kojima se analiziraju periodička izvješća, te razni portali na kojima se mogu dobiti