Uvod

Projektna dokumentacija predstavlja temelj svakog uspešnog softverskog projekta. Ona sadrži sve neophodne informacije za realizaciju tehničkog rešenja koje je prethodno definisano. Dokumentacija omogućava bolju komunikaciju između programera, testera, dizajnera i ostalih učesnika u projektu, a takođe smanjuje rizike tokom razvoja i održavanja sistema.

Izrada projektne dokumentacije dolazi nakon usvajanja tehničkog rešenja i koristi se kao detaljan vodič za sve faze razvoja, implementacije i održavanja sistema.


Šta je projektna dokumentacija?

Projektna dokumentacija je skup tehničkih i poslovnih informacija koje detaljno opisuju kako će softverski sistem biti razvijen, implementiran i korišćen. Njena svrha je:

  • Obezbeđivanje jasnog plana za razvojni tim.
  • Unapređenje komunikacije između učesnika projekta (programera, dizajnera, menadžera i klijenata).
  • Smanjenje rizika tokom razvoja i održavanja sistema.

Dobra projektna dokumentacija osigurava da svi učesnici razumeju opseg i ciljeve projekta.


Sadržaj projektne dokumentacije

Projektna dokumentacija se obično sastoji od sledećih delova:

  1. Uvod:

    • Opis problema i ciljevi projekta.
    • Očekivane koristi za korisnike.
    • Kratak pregled tehničkog rešenja.
  2. Specifikacija zahteva
    • Detaljni opis funkcionalnosti sistema.
    • Spisak tehničkih zahteva, uključujući hardver, softver i mrežnu infrastrukturu.
  3. Arhitektura sistema
    • Dijagrami arhitekture koji prikazuju odnose između komponenti.
    • Opis ključnih modula sistema.
    • Izbor tehnologija (programski jezici, baze podataka, alati).
  4. Plan implementacije

    • Koraci razvoja sistema, podeljeni u faze.
    • Definisanje vremenskog okvira za svaku fazu.
  5. Testiranje i kontrola kvaliteta

    • Strategije za testiranje sistema.
    • Plan za identifikaciju i otklanjanje grešaka.
  6. Plan održavanja

    • Detalji o ažuriranjima, sigurnosnim proverenama i podršci korisnicima.
  7. Troškovi i resursi

    • Proračun troškova za razvoj, održavanje i korišćenje sistema.
    • Lista potrebnih resursa, uključujući ljudske i tehničke resurse.

1. Uvod

Cilj sistema "Online biblioteka" je omogućavanje korisnicima da pretražuju, iznajmljuju i vraćaju knjige putem interneta. Pored toga, sistem pruža administrativne funkcionalnosti kao što su dodavanje novih knjiga, upravljanje korisnicima i praćenje zaduženja.
Tehničko rešenje predviđa web aplikaciju sa modernim korisničkim interfejsom, sigurnim backend sistemom i centralizovanom bazom podataka.


2. Specifikacija zahteva

   Korisnici sistema:

  • Članovi biblioteke: Registracija, pretraga knjiga, rezervacija i pregled statusa zaduženja.
  • Administratori: Dodavanje novih knjiga, upravljanje korisnicima i evidencija zaduženja.

   Funkcionalnosti sistema:

  1. Registracija i prijava korisnika.
  2. Pretraga knjiga po naslovu, autoru ili žanru.
  3. Elektronsko izdavanje i vraćanje knjiga.
  4. Obaveštenja korisnicima o rokovima vraćanja knjiga.
  5. Administrativni panel za upravljanje bazom knjiga i korisnicima.

  Tehnički zahtevi:

  • Server sa podrškom za PHP ili Node.js.
  • MySQL baza podataka za čuvanje podataka o knjigama i korisnicima.
  • SSL sertifikat za zaštitu korisničkih podataka.

3. Arhitektura sistema

  Dijagram arhitekture:

  • Frontend: Korisnici pristupaju sistemu putem web pretraživača. Interfejs će biti razvijen u HTML, CSS i JavaScript (React.js).
  • Backend: Server obrađuje zahteve korisnika i pristupa bazi podataka koristeći PHP ili Node.js.
  • Baza podataka: MySQL baza skladišti informacije o knjigama, korisnicima, transakcijama i rokovima.

  Moduli sistema:

  1. Korisnički modul: Registracija, prijava i upravljanje korisničkim profilom.
  2. Modul za knjige: Pretraga i upravljanje knjigama.
  3. Administrativni modul: Upravljanje korisnicima, knjigama i zaduženjima.

4. Plan implementacije

  Faza 1: Razvoj korisničkog interfejsa

  • Kreiranje dizajna za pretragu knjiga i korisničke profile.
  • Razvoj prijave i registracije.

  Faza 2: Backend funkcionalnosti

  • Implementacija API-ja za pretragu knjiga i rezervaciju.
  • Povezivanje sa bazom podataka.

  Faza 3: Administrativni panel

  • Izrada alata za dodavanje novih knjiga i upravljanje korisnicima.
  • Upravljanje zaduženjima i rokovima.

  Faza 4: Testiranje i lansiranje

  • Testiranje funkcionalnosti sistema.
  • Ispravljanje grešaka i optimizacija performansi.

5. Testiranje i kontrola kvaliteta

  Plan testiranja uključuje:

  • Funkcionalno testiranje: Provera da li sve funkcionalnosti rade ispravno (npr. registracija, rezervacija knjiga).
  • Testiranje sigurnosti: Provera zaštite korisničkih podataka.
  • Testiranje performansi: Uveravanje da sistem radi brzo čak i sa velikim brojem korisnika.

6. Plan održavanja

Nakon lansiranja sistema, održavanje uključuje:

  • Redovno ažuriranje baze podataka o knjigama.
  • Sigurnosne provere i instalaciju zakrpa.
  • Pružanje korisničke podrške za rešavanje problema.

7. Procena troškova

  Razvojni resursi:

  • Programer za frontend (3 meseca).
  • Programer za backend (3 meseca).
  • Administrator baze podataka (1 mesec).

  Tehnički troškovi:

  • Hosting servera i domen: $200 godišnje.
  • SSL sertifikat: $100 godišnje.
  • Alat za upravljanje projektom (npr. Jira): $50 mesečno.

  Ukupan budžet: Približno $15,000 za razvoj i $350 godišnje za održavanje.


Zaključak

Projektna dokumentacija je osnovni vodič za uspešnu realizaciju softverskog sistema. Jasno definisani zahtevi, arhitektura, plan implementacije i proračun troškova omogućavaju efikasno upravljanje projektom i saradnju između svih učesnika.



Zadaci za učenike (grupni rad):


Scenario: Razvijate sistem za online prodaju proizvoda.
Zadatak:

  1. Definišite osnovne funkcionalnosti sistema, kao što su registracija korisnika, dodavanje proizvoda u korpu i plaćanje.
  2. Predložite koje tehnologije ćete koristiti za frontend i backend sistema.
  3. Navedite plan implementacije, podeljen na faze (npr. razvoj korisničkog interfejsa, povezivanje sa bazom podataka).
Projektna dokumentacija za sistem "Online prodavnica"
  1. Uvod
    Cilj ovog sistema je omogućiti korisnicima da pregledaju proizvode, dodaju ih u korpu i izvrše online kupovinu. Tehničko rešenje predviđa frontend razvijen u React.js-u, backend u PHP-u i bazu podataka u MySQL-u.

  2. Specifikacija zahteva

    • Korisnici:
      • Kupci: Registracija, pregled proizvoda, dodavanje u korpu, plaćanje.
      • Administratori: Upravljanje proizvodima, porudžbinama i korisničkim podacima.
    • Tehnički zahtevi:
      • Server sa PHP podrškom.
      • SSL sertifikat za sigurnost transakcija.
  3. Arhitektura sistema

    • Frontend: Web aplikacija zasnovana na React.js-u.
    • Backend: API razvijen u PHP-u.
    • Baza podataka: MySQL, organizovana prema tabelama za korisnike, proizvode i porudžbine.
  4. Plan implementacije

    • Faza 1: Razvoj korisničkog interfejsa.
    • Faza 2: Kreiranje API-ja i povezivanje sa bazom podataka.
    • Faza 3: Testiranje sistema.
  5. Testiranje i kontrola kvaliteta

    • Funkcionalno testiranje svih modula.
    • Bezbednosno testiranje (penetracioni testovi).
  6. Plan održavanja

    • Ažuriranje proizvoda i sigurnosnih zakrpa.
    • Redovne provere performansi sistema.
  7. Troškovi i resursi

    • Plata za tri programera tokom 6 meseci.
    • Trošak za hosting, SSL sertifikat i Stripe integraciju.



Uputstvo: Osmislite projektni dokument za sistem koji omogućava rezervaciju karata za bioskop.

  1. Specifikacija zahteva: Definišite tri glavne funkcionalnosti sistema.
  2. Plan testiranja: Osmislite testne scenarije za provere funkcionalnosti, sigurnosti i performansi.
  3. Procena troškova: Navedite okvirni budžet za razvoj ovog sistema, uključujući troškove za hosting, SSL sertifikat i rad programera.

Scenario: Planirate razvoj aplikacije za učenike koja omogućava pregled rasporeda časova i obaveštenja o promenama.
Zadatak:

  1. Definišite korisnike aplikacije i njihove uloge.
  2. Predložite tehnologije za razvoj mobilne aplikacije (npr. React Native, Firebase).
  3. Osmislite plan održavanja aplikacije (npr. ažuriranje rasporeda, rešavanje tehničkih problema).

Uputstvo: Pretpostavite da razvijate dva sistema:

  1. "Online biblioteka" (sistem za iznajmljivanje knjiga).
  2. "Online prodavnica" (sistem za prodaju proizvoda).
    Navedite:
  • Razlike u tehničkim zahtevima za oba sistema.
  • Procenu potrebnih resursa (programeri, serveri, baze podataka).
  • Ukupne troškove razvoja i održavanja za oba sistema.

Uputstvo: Osmislite sopstveni IT projekat (npr. aplikaciju za vođenje beleški, sistem za upravljanje događajima).
Navedite:

  1. Funkcionalnosti sistema.
  2. Tehnologije koje ćete koristiti.
  3. Faze razvoja i testiranja.
  4. Procenu troškova i vremenski okvir realizacije.

Ovi zadaci su osmišljeni tako da učenici razvijaju sposobnost analitičkog razmišljanja i razumevanja procesa izrade projektne dokumentacije. Poželjno je da zadatke rešavaju u grupama kako bi vežbali timski rad i deljenje odgovornosti.

 

Last modified: Thursday, 11 December 2025, 1:36 PM