Univerzitet u Novom Sadu Tehniki fakultet Mihajlo Pupin

  • Slides: 45
Download presentation
Univerzitet u Novom Sadu Tehnički fakultet » Mihajlo Pupin « Zrenjanin Diplomski rad PHP

Univerzitet u Novom Sadu Tehnički fakultet » Mihajlo Pupin « Zrenjanin Diplomski rad PHP višeslojna web aplikacija za evidenciju projekata Multi-layered PHP Web Application for Projects Records Support Mentor: Doc. dr Ljubica Kazi Student: Branislav Đekić IT 16/13 Zrenjanin, 2018.

Sadržaj • • • Uvod Teorijske osnove Postojeća rešenja TFZR – stanje i specifikacija

Sadržaj • • • Uvod Teorijske osnove Postojeća rešenja TFZR – stanje i specifikacija zahteva Planirane softverske funkcije i profili korisnika Dijagram komponenti Konceptualni model podataka Korisničko uputstvo Opis elemenata implementacije Zaključak

UVOD • Internet omogućava brzu komunikaciju • Stranice zahtevaju bazu podataka za trajno skladištenje

UVOD • Internet omogućava brzu komunikaciju • Stranice zahtevaju bazu podataka za trajno skladištenje • Realizovana je PHP višeslojna aplikacija za podršku upravljanju projektima fakulteta • Rad je baziran na radu koji je rađen na predmetu Stručna a • Trenutna aplikacija je kompletno prerađena i koristi PHP kod i višeslojnost

TEORIJSKE OSNOVE Web Aplikacija • Web aplikacija – aplikacija koristi internet pretraživač kao klijent

TEORIJSKE OSNOVE Web Aplikacija • Web aplikacija – aplikacija koristi internet pretraživač kao klijent • Sastoji se od HTML stranica, klasa i drugih resursa • Statička stranica i Web aplikacija (razlika) • Funkcionisanje • Karekteristike • Prednosti i nedostaci

TEORIJSKE OSNOVE Web Aplikacija, Ph. P/My. SQL • Razvoj softvera (metodologija) – Tradicionalna metoda

TEORIJSKE OSNOVE Web Aplikacija, Ph. P/My. SQL • Razvoj softvera (metodologija) – Tradicionalna metoda (waterfall) – Agilna metoda (iterativno-inkrementalna) • PHP • My. SQL Baza Podataka • Komunikacija između PHP i My. SQL

TEORIJSKE OSNOVE Višeslojni razvoj softvera Višeslojna arhitektura sa 4 osnovna sloja: - Prezentacioni sloj

TEORIJSKE OSNOVE Višeslojni razvoj softvera Višeslojna arhitektura sa 4 osnovna sloja: - Prezentacioni sloj (korisnički interfejs + prezentaciona logika) - Sloj servisa (među sloj, web servisi, mapiranje) - Sloj poslovne logike (poslovni objekti, poslovna pravila) - Sloj za pristup podacima (CRUD, transakcije) Primer MVC View = samo korisnički interfejs Controller = prezentaciona logika + sloj poslovne logike Model = klase za pristup podacima

TEORIJSKE OSNOVE Upravljanje projektima • • Definicija projekta Svrha projekata Gvozdeni trougao Pet grupa

TEORIJSKE OSNOVE Upravljanje projektima • • Definicija projekta Svrha projekata Gvozdeni trougao Pet grupa procesa 10 oblasti znanja Menadžeri projekta Podela u faze Rizici

TEORIJSKE OSNOVE Prince 2 • Prince 2 – metodologija za upravljanje projektima FAZE I

TEORIJSKE OSNOVE Prince 2 • Prince 2 – metodologija za upravljanje projektima FAZE I PROCESI • Principi • Teme

PRINCE 2, nivoi menadžmenta

PRINCE 2, nivoi menadžmenta

PRINCE 2, dokumentacija Osnovni rezultati Zapisi i izvestaji

PRINCE 2, dokumentacija Osnovni rezultati Zapisi i izvestaji

POSTOJEĆA REŠENJA • Desktop rešenja - Microsoft project (ima i web) • Web rešenja

POSTOJEĆA REŠENJA • Desktop rešenja - Microsoft project (ima i web) • Web rešenja – Wrike, Liquid planner, Zoho projects • Upravljanje ličnim projektima - Asana

TFZR - stanje i specifikacija zahteva

TFZR - stanje i specifikacija zahteva

Model poslovnih procesa

Model poslovnih procesa

PLANIRANE SOFTVERSKE FUNKCIJE i profili korisnika • Posetilac - Prikaz liste konkursa, vesti o

PLANIRANE SOFTVERSKE FUNKCIJE i profili korisnika • Posetilac - Prikaz liste konkursa, vesti o konkursima, spisak administratora, i projekata • Administrator - CRUD konkursa, vesti o konkursima, zaposlenih i projekata • Rukovodilac - Pridruživanje članova projektu i unos zadataka za člana • Sekretar - CRUD opreme i vesti projekata • Član projekta - Unos rezultata projekata i tabelarni prikaz vesti projekta

Dijagram komponenti

Dijagram komponenti

USE CASE dijagram

USE CASE dijagram

Konceptualni Model Podataka

Konceptualni Model Podataka

Korisničko uputstvo • • Funkcije neprijavljenog korisnika Funkcija prijavljivanja Razlika između uloga prijavljenih korisnika

Korisničko uputstvo • • Funkcije neprijavljenog korisnika Funkcija prijavljivanja Razlika između uloga prijavljenih korisnika Funkcionalnost u okviru različitih uloga: – Administrator – Rukovodilac projekta – Sekretar projekta – Zaposleni koji učestvuje na projektu – Zaposleni bez učešća na projektu

KORISNIČKO UPUTSTVO - početna stranica sa vestima (funkcije neprijavljenog korisnika)

KORISNIČKO UPUTSTVO - početna stranica sa vestima (funkcije neprijavljenog korisnika)

KORISNIČKO UPUTSTVO - dodavanje projekta i određivanje rukovodioca projekta (funkcija administratora)

KORISNIČKO UPUTSTVO - dodavanje projekta i određivanje rukovodioca projekta (funkcija administratora)

KORISNIČKO UPUTSTVO - lista i filtriranje svih projekata (funkcija administratora aplikacije)

KORISNIČKO UPUTSTVO - lista i filtriranje svih projekata (funkcija administratora aplikacije)

KORISNIČKO UPUTSTVO - filtriranje zaposlenih za parametarsku štampu spiska zaposlenih (funkcija administratora)

KORISNIČKO UPUTSTVO - filtriranje zaposlenih za parametarsku štampu spiska zaposlenih (funkcija administratora)

KORISNIČKO UPUTSTVO - parametarska štampa spiska zaposlenih grupisano po ulogama (funkcija administratora)

KORISNIČKO UPUTSTVO - parametarska štampa spiska zaposlenih grupisano po ulogama (funkcija administratora)

KORISNIČKO UPUTSTVO - izbor kriterijuma filtriranja za štampu spiska učesnika projekta (funkcija administratora)

KORISNIČKO UPUTSTVO - izbor kriterijuma filtriranja za štampu spiska učesnika projekta (funkcija administratora)

KORISNIČKO UPUTSTVO - parametarska štampa spiska učesnika projekta (funkcija administratora)

KORISNIČKO UPUTSTVO - parametarska štampa spiska učesnika projekta (funkcija administratora)

KORISNIČKO UPUTSTVO - dodavanje zaposlenog projektu (funkcija rukovodioca projekta)

KORISNIČKO UPUTSTVO - dodavanje zaposlenog projektu (funkcija rukovodioca projekta)

KORISNIČKO UPUTSTVO - primena poslovnog pravila

KORISNIČKO UPUTSTVO - primena poslovnog pravila

KORISNIČKO UPUTSTVO - spisak projekata prijavljenog zaposlenog i izbor jednog projekta

KORISNIČKO UPUTSTVO - spisak projekata prijavljenog zaposlenog i izbor jednog projekta

KORISNIČKO UPUTSTVO - početni ekran zaposlenog koji je član na nekom projektu

KORISNIČKO UPUTSTVO - početni ekran zaposlenog koji je član na nekom projektu

KORISNIČKO UPUTSTVO - lista vesti sa brisanjem i izmenom (funkcija sekretara projekta)

KORISNIČKO UPUTSTVO - lista vesti sa brisanjem i izmenom (funkcija sekretara projekta)

KORISNIČKO UPUTSTVO - dodavanje vesti (funkcija sekretara projekta)

KORISNIČKO UPUTSTVO - dodavanje vesti (funkcija sekretara projekta)

KORISNIČKO UPUTSTVO - parametarska štampa spiska opreme po filteru za konkretan projekat (funkcija sekretara

KORISNIČKO UPUTSTVO - parametarska štampa spiska opreme po filteru za konkretan projekat (funkcija sekretara projekta)

OPIS ELEMENATA IMPLEMENTACIJE – struktura aplikacije po slojevima PREZENTACIONI SLOJ Korisnički interfejs Prezentaciona logika

OPIS ELEMENATA IMPLEMENTACIJE – struktura aplikacije po slojevima PREZENTACIONI SLOJ Korisnički interfejs Prezentaciona logika SLOJ SERVISA Nije implementiran SLOJ POSLOVNE LOGIKE Klase poslovnih objekata Klase poslovnog pravila SLOJ ZA RAD SA PODACIMA Klase za rad sa podacima Stored procedure Baza podataka

OPIS ELEMENATA IMPLEMENTACIJE • • SQL upiti i struktura baze podataka Opšta klasa za

OPIS ELEMENATA IMPLEMENTACIJE • • SQL upiti i struktura baze podataka Opšta klasa za konekciju na bazu podataka Klasa CRUD operacija Klasa poslovnog pravila Klasa poslovnog objekta Prezentaciona logika Korisnički interfejs

SQL upiti i baza podataka

SQL upiti i baza podataka

Klasa za konekciju i parametri

Klasa za konekciju i parametri

Klasa sloja podataka sa CRUD operacijama

Klasa sloja podataka sa CRUD operacijama

Primena poslovnog pravila i poslovnih objekata

Primena poslovnog pravila i poslovnih objekata

Provera opterećenosti zaposlenog - procedura za poslovno pravilo Klasa cls_OPTEREĆENJE. php

Provera opterećenosti zaposlenog - procedura za poslovno pravilo Klasa cls_OPTEREĆENJE. php

POSLOVNI OBJEKAT– cls_Clanovi. Projekta. php PROVERA DOSTUPNOSTI ZAPOSLENOG ZA DODAVANJE NA PROJEKAT Tabela Clanovi

POSLOVNI OBJEKAT– cls_Clanovi. Projekta. php PROVERA DOSTUPNOSTI ZAPOSLENOG ZA DODAVANJE NA PROJEKAT Tabela Clanovi projekata ne postoji u bazi, vec Zaposleni, projekat i Ucesce na projektu RIGHT join i skupovni operator NOT IN

PREZENTACIONA LOGIKA - priprema podataka za prikaz na formi

PREZENTACIONA LOGIKA - priprema podataka za prikaz na formi

KORISNIČKI INTERFEJS - html + css + php

KORISNIČKI INTERFEJS - html + css + php

ZAKLJUČAK • Ciljevi diplomskog rada – ilustracija višeslojnog razvoja na primeru PHP aplikacije -

ZAKLJUČAK • Ciljevi diplomskog rada – ilustracija višeslojnog razvoja na primeru PHP aplikacije - Izrada realnog primera uz primenu složenijih tehnika programiranja i rada sa bazom podataka na prototipu aplikacije za podršku upravljanju projektima • Specifičnost – upravljanje projektima na fakultetima • Dalje unapređenje – realizacija svih funkcija • Dalje istraživanje – višeslojni razvoj u okviru frameworka Laravel, Simfony, ZEND.