Uporaba Odprte Kode Kot Osnova Za Razvoj Programske Opreme
Total Page:16
File Type:pdf, Size:1020Kb
Univerza v Ljubljani Fakulteta za računalništvo in informatiko Univerzitetni študij Diplomska naloga Uporaba odprte kode kot osnova za razvoj programske opreme Peter Primožič Mentor: prof. dr. Franc Solina, univ. dipl. ing. Ljubljana, februar 2005 Kazalo POVZETEK .............................................................................................................................VI 1 UVOD ................................................................................................................................ 1 2 FENOMEN ODPRTE KODE............................................................................................ 3 2.1 Zgodovina odprte kode............................................................................................... 3 2.1.1 GNU projekt....................................................................................................... 3 2.1.2 Linux .................................................................................................................. 5 2.1.3 Današnji čas........................................................................................................ 6 2.2 Definicija prostega programja in odprte kode............................................................ 7 2.2.1 Prosto programje ................................................................................................ 7 2.2.2 Odprta koda........................................................................................................ 9 2.3 Licenčni modeli prostega programja........................................................................ 11 2.3.1 GNU Public Licence – GPL............................................................................. 11 2.3.2 Lesser GPL - LGPL.......................................................................................... 12 2.3.3 BSD licenca (Berkley Software Distribution).................................................. 12 2.3.4 Mozilla javna licenca (Mozilla Public license - MPL) .................................... 13 2.4 Odprtokodne skupnosti ............................................................................................ 14 2.4.1 Trg .................................................................................................................... 14 2.4.2 Demografija...................................................................................................... 15 2.4.3 Motivacija......................................................................................................... 16 2.4.4 Upravljanje z znanjem v odprtokodnih skupnostih.......................................... 18 2.5 Odprtokodni projekti................................................................................................ 21 2.5.1 Razvojni model (Cathedral and Bazaar) .......................................................... 21 2.5.2 Uporabniki in njihove vloge............................................................................. 22 2.5.3 Življenski cikel projekta................................................................................... 26 2.6 Prednosti in slabosti prostega programja ................................................................. 29 2.6.1 Prednosti........................................................................................................... 29 2.6.2 Slabosti (problemi) odprte kode....................................................................... 32 2.7 Ekonomski vidik ...................................................................................................... 34 2.7.1 Oddajanje programske opreme brezplačno...................................................... 35 2.7.2 Zaslužek z odprto kodo .................................................................................... 36 2.8 Uporaba odprte kode ................................................................................................ 37 3 COMLAND D.O.O. IN BUGZILLA............................................................................... 39 I 3.1 Specifikacija helpdesk aplikacije ............................................................................. 39 3.1.1 Zahteve............................................................................................................. 39 3.1.2 Funkcionalnost ................................................................................................. 40 3.2 Ozadje odločitve za uporabo Bugzille ..................................................................... 43 3.2.1 Iskanje in izbiranje med odprtokodnimi rešitvami........................................... 44 3.2.2 Sprejem odločitve............................................................................................. 45 3.3 Bugzilla .................................................................................................................... 46 3.3.1 Kaj je Bugzilla.................................................................................................. 46 3.3.2 Kaj Bugzilla ponuja.......................................................................................... 46 3.3.3 Funkcionalnost Bugzile.................................................................................... 47 3.4 Prilagajanje Bugzille ................................................................................................ 52 3.4.1 Lokalizacija Bugzille........................................................................................ 52 3.4.2 Preobrazba uporabniškega vmesnika ............................................................... 56 3.4.3 Odvzemanje in dodajanje funkcionalnosti ....................................................... 60 4 ZAKLJUČEK................................................................................................................... 66 ZAHVALA............................................................................................................................... 68 VIRI IN LITERATURA .......................................................................................................... 69 Izjava o samostojnosti dela ...................................................................................................... 71 II Slike Slika 2.1 Tržni delež strežnikov na spletu od Avgust 1995 - November 2004.......................... 6 Slika 2.2 Razlogi za vključevanje v odprtokodne skupnosti................................................... 17 Slika 2.3 Najpomembnejše koristi sodelovanja v odprtokodni skupnosti .............................. 17 Slika 2.4 Razlika med motivacijo prostovoljcev in tistih, ki so plačani za odprto kodo ........ 18 Slika 2.5 Programska koda v žarišču ...................................................................................... 23 Slika 2.6 Skupnosti na podlagi skupnih interesov................................................................... 24 Slika 2.7 Življenski cikel odprtokodnega projekta (Vir: [27])................................................ 27 Slika 2.8 Delež stroškov povezanih z nakupom programske opreme..................................... 35 Slika 3.1 Primer uporabe za vlogo Uporabnik ........................................................................ 41 Slika 3.2 Primer uporabe za vlogo Skrbnik............................................................................. 41 Slika 3.3 Primer uporabe za vlogo Ekspert............................................................................. 42 Slika 3.4 Primer uporabe za vlogo Vodja ............................................................................... 42 Slika 3.5 Primer uporabe za vlogo Administrator................................................................... 43 Slika 3.6 Prijava v sistem ........................................................................................................ 48 Slika 3.7 Nastavitve računa Slika 3.8 Nastavitve elektronske pošte......................... 49 Slika 3.9 Prijava zadeve .......................................................................................................... 50 Slika 3.10 Pregledovanje prijav .............................................................................................. 50 Slika 3.11 Iskanje prijav.......................................................................................................... 51 Slika 3.12 Izdelava poročila.................................................................................................... 51 Slika 3.13 Struktura template direktorija ................................................................................ 53 Slika 3.14 Primejava predlog (v levem oknu slovenska, v desnem angleška)........................ 54 Slika 3.15 Obrazec za prijavo v Bugzillo................................................................................ 55 Slika 3.16 Prva stran po prijavi v Bugzillo ............................................................................. 55 Slika 3.17 Izbira produkta pri prijavi zadeve .......................................................................... 55 Slika 3.18 Razdelitev spletne strani Bugzille.......................................................................... 56 Slika 3.19 Obrazec za prijavo v Bugzillo................................................................................ 58 Slika 3.20 Prva stran po prijavi v Bugzillo (pregled prijav uporabnika) ................................ 58 Slika 3.21 Vnos nove prijave .................................................................................................. 59 Slika 3.22 Napredno iskanje prijav ........................................................................................