Meeskond: TrackPlace: Difference between revisions
Line 57: | Line 57: | ||
Rakenduse funktsioonid jagunevad ''Must have'' funktsioonid ehk funktsioonid, mis peavad rakenduse esitlemisajaks olema kindlat väljaarendatud ja ''Nice to have'' funktsioonid, mis lisaksid küll rakendusele lisaväärtust, kuid mille puudumine ei oleks takistuseks rakenduse põhiidee täitmisel. | Rakenduse funktsioonid jagunevad ''Must have'' funktsioonid ehk funktsioonid, mis peavad rakenduse esitlemisajaks olema kindlat väljaarendatud ja ''Nice to have'' funktsioonid, mis lisaksid küll rakendusele lisaväärtust, kuid mille puudumine ei oleks takistuseks rakenduse põhiidee täitmisel. | ||
Rakenduse ''Must have'' funktsioonide hulka kuuluvad järgmised funktsionaalsused: | '''Rakenduse ''Must have'' funktsioonide hulka kuuluvad järgmised funktsionaalsused:''' | ||
* Tellija andmete kuvamine. | |||
* Veoki lisamine andmebaasi vastavalt veoki parameetritele. | * Veoki lisamine andmebaasi vastavalt veoki parameetritele. | ||
* Tellimuse sisestamine ajagraafikusse ja sidumine tellija poolt väljavalitud veokiga. | * Tellimuse sisestamine ajagraafikusse ja sidumine tellija poolt väljavalitud veokiga. | ||
Line 63: | Line 64: | ||
Rakenduse ''Nice to'' have funktsioonide hulka kuuluvad järgmised funktsionaalsused: | '''Rakenduse ''Nice to'' have funktsioonide hulka kuuluvad järgmised funktsionaalsused:''' | ||
* Veokite sorteerimine vastavalt nende mahutavusele. | * Veokite sorteerimine vastavalt nende mahutavusele. | ||
* Tellimuse andmete väljaprintimine paberkandjale. | * Tellimuse andmete väljaprintimine paberkandjale. | ||
Line 70: | Line 71: | ||
Rakenduse väljatöötamisel rakendatakse ''Windows Presentation Foundation'' (WPF) rakenduste esitlustehnoloogiat, mille üheks osaks on ka arendusmudel ''Model-Viev-ViewModel'' (MVVM). MVVM arendusmudeli eeliseks on kasutajaliidesest selgelt eristatud äri- ja esitlusloogika. MVVM arendusmudel jaguneb kolme erinevasse klassifaili: | Rakenduse väljatöötamisel rakendatakse ''Windows Presentation Foundation'' (WPF) rakenduste esitlustehnoloogiat, mille üheks osaks on ka arendusmudel ''Model-Viev-ViewModel'' (MVVM). MVVM arendusmudeli eeliseks on kasutajaliidesest selgelt eristatud äri- ja esitlusloogika. MVVM arendusmudel jaguneb kolme erinevasse klassifaili: | ||
* Vaatefail, mis kätkeb kasutajaliidest ning selle loomisloogikat | * Vaatefail, mis kätkeb kasutajaliidest ning selle loomisloogikat. | ||
* Vaatemudelifaili, mis sisaldab informatsiooni rakenduse esitlusloogika ning -oleku kohta. | * Vaatemudelifaili, mis sisaldab informatsiooni rakenduse esitlusloogika ning -oleku kohta. | ||
* Kolmas klassifail, mis on MVVM arendusmudelis, on mudelifail, mis sisaldab informatsiooni rakenduse äripoole ning vajaminevate andmete kasutusviiside kohta. | * Kolmas klassifail, mis on MVVM arendusmudelis, on mudelifail, mis sisaldab informatsiooni rakenduse äripoole ning vajaminevate andmete kasutusviiside kohta. |
Revision as of 23:27, 5 November 2017
Projekt aines "Programmeerimine C# keeles"
Projekti esitamise kuupäev: //TODO
Projekti meeskond
- Marek Juhanson, D23
- Rauno Lõhmus, D22 - projektijuht
- Merilyn Merisalu, D22
Projekti idee
Projekti raames loodava rakenduse ideeks on teha kasutajaliides veoautode tellimiseks vastavalt koorma mahule ning jooksva ülevaate pakkumisest saadavalolevatest ja koorma mahule vastavatest veoautodest.
Must have funktsionaalsus:
- Veoki lisamine andmebaasi vastavalt veoki parameetritele (mudel, kasti suurus, kandevõime)
- Tellimuse sisestamine ajagraafikusse ja tellimuse sidumine sobiva veokiga
- Tellitud tellimuste kuvamine ajagraafikus
Nice to have funktsionaalsus:
- Veokite sorteerimine vastavalt nende mahutavusele
- Tellimuse andmete printimine
- Kena ja mugav kasutajaliides
Idee algversioon pildina:
//Siia tuleb lõikepilt
Kasutatav tehnoloogia
- C#
- .NET
- Entity Framework
Projekti analüüs
Meeskond TrackPlace soovib C# projektina luua töölauarakenduse nimega TrackPlace, mille eesmärgiks on pakkuda veokite tellimisteenust üle Eesti. Loodava rakenduse tööpõhimõtte on järgnev:
- Rakenduse avamisel, avaneb tellijale kasutajaliides, kus palutakse täita tellimuse esitamisvorm. Esitamisvormi tuleb sisestada tellija andmed, milleks on nimi (Full Name), emaili aadress (E-mail Address), tellija aadress (Costumer’s Address) ja telefoni number (Phone number).
Järgnevalt peab tellija sisestama andmed, mille järgi toimub andmebaasist sobivate veokite valimine. Andmed, mida tellija peab sobiva veoki leidmiseks sisestama, on järgmised:
- Aadress (Address), kus on kirjas tellitava veoki veosuunad, nii kauba pealelaadimiskoha andmed kui ka mahalaadimiskoha andmed (maakond (County), linn (City), küla (Village), tänav (Street) ja maja number(House Number)).
- Lastimõõtmed (Cargo Dimensions), kuhu tellijal tuleb sisestada lasti pikkus (Length), laius (Weight) ja kõrgus (Height).
- Lastikaal (Cargo Weight), kuhu sisestatakse koorma kaal (tonnides).
- Veoki kasutamise soovitav alguskuupäev ja kellaaeg (Start Date and Time) ning kasutusaja eeldatav lõppkuupäev ja kellaaeg (End Date and Time).
- Rippmenüüst nimega veoki tüüp (Truck Type) on tellijal võimalik valida lastiveoks sobiv veokitüüp: Poolhaagisega veokid (Trucks with Semi-trailers), Täis- ja keskteikhaagisega veokid (Trucks with full trailers), JumboTreileriga ehk Megahaagisega veokid (Trucks with jumbo (Mega-) trailers) ja Tagaluukauto (Tail-lift truck).
- Tellimuse viimasesse lahtrisse, lahtrisse kommentaarid (Comments) saab tellija sisestada täpsustavat informatsiooni tellimuse kirjeldamiseks.
Kõikide tellimust puudutavate väljade täitmine on kohustuslik.
Vajutades nupule „Vali veok“ (Choose truck) saadetakse sisestatud andmed päringu kujul andmebaasi, kust tagastatakse, vastavalt päringus esitatud kriteeriumitele, sobivad veokid. Kui tellija on sobiva veoki leidnud, lisatakse tellimus ka veoki ajagraafikusse. Pärast tellimuse esitamist, võimaldab loodav rakendus ka tellimuse kohta käivate andmete (Tellimuse number, tellija sisestatud andmed, tellimuse andmed, valitud veokitüüp, veoki ID, tellimuse maksumus), väljaprintimist paberkandjale. Eelnevalt kirjeldatud protsess toimub läbi kena ja mugava kasutajaliidese.
Rakenduse funktsioonid jagunevad Must have funktsioonid ehk funktsioonid, mis peavad rakenduse esitlemisajaks olema kindlat väljaarendatud ja Nice to have funktsioonid, mis lisaksid küll rakendusele lisaväärtust, kuid mille puudumine ei oleks takistuseks rakenduse põhiidee täitmisel.
Rakenduse Must have funktsioonide hulka kuuluvad järgmised funktsionaalsused:
- Tellija andmete kuvamine.
- Veoki lisamine andmebaasi vastavalt veoki parameetritele.
- Tellimuse sisestamine ajagraafikusse ja sidumine tellija poolt väljavalitud veokiga.
- Tellitud tellimuste kuvamine ajagraafikus.
Rakenduse Nice to have funktsioonide hulka kuuluvad järgmised funktsionaalsused:
- Veokite sorteerimine vastavalt nende mahutavusele.
- Tellimuse andmete väljaprintimine paberkandjale.
- Kena ja mugav kasutajaliides.
Rakenduse väljatöötamisel rakendatakse Windows Presentation Foundation (WPF) rakenduste esitlustehnoloogiat, mille üheks osaks on ka arendusmudel Model-Viev-ViewModel (MVVM). MVVM arendusmudeli eeliseks on kasutajaliidesest selgelt eristatud äri- ja esitlusloogika. MVVM arendusmudel jaguneb kolme erinevasse klassifaili:
- Vaatefail, mis kätkeb kasutajaliidest ning selle loomisloogikat.
- Vaatemudelifaili, mis sisaldab informatsiooni rakenduse esitlusloogika ning -oleku kohta.
- Kolmas klassifail, mis on MVVM arendusmudelis, on mudelifail, mis sisaldab informatsiooni rakenduse äripoole ning vajaminevate andmete kasutusviiside kohta.
Rakenduse loomisel on kasutusel C# programmeerimiskeelt, .Net raamistiku ning andmebaasi ülesehitamiseks ja andmebaasiga suhtlemiseks kasutatakse Entity Framework'i.
Projekti loomise käigus loodud (SWOT) analüüsi põhjal, ilmnesid järgnevad asjaolud:
Projekti teostusega kaasnevad tugevused (S):
- Grupitöö tulemusena töötava rakenduse prototüübi loomine.
- Annab võimaluse arendada programmeerimisoskust C# programmeerimiskeeles.
- Võimaldab tutvuda Microsoft’i poolt väljatöötatud .Net raamistiku võimalustega, Entity Framework'i, WPF esitlustehnoloogia, projektihoidla Team Foundation Service’i ning MVVM arendusmudeli poolt pakutavate võimalustega projekti arendamiseks ja rakenduse väljatöötamiseks.
- Annab võimaluse rakendada teistes ainetes õpitut oma projekti loomisel.
- Arendada oskust töötada meeskonnaliikmena, sealjuures arendades ka muudatuste vajalikkuse selgitamisoskust, misläbi tagatakse, et iga meeskonnaliige mõistab koodis tehtavaid muudatusi ja, et muudatuste väljapakkuja suudab, teiste meeskonnaliikmete nõusolekul, kas omandatud teadmiste baasil või teiste meeskonnaliikmete abiga, soovitud muudatused projekti koodi failides läbi viia.
- Rakenduse esitlemisoskus, mis taaskord eeldab loodava rakenduse koodi ja funktsionaalsuste põhjalikku tundmist.
Projekti teostusega kaasnevad nõrkused (W):
- Esmakordne ühisprojekti käigus rakenduse loomine.
- Erinevad arusaamad rakenduse funktsionaalsuste kirjapanekul koodina võivad aeglustada projekti teostamise külgnemist.
- Erinev C# koodi tundmis- ja kirjutamisoskuse tase.
- Kuna suurem osa projekti arutelust toimub läbi Skype’i gruppi, siis sellest tulenevalt võib vaheetappide lahtimõtestamisel ja muudatuste tegemisel, tekkida üksteisest möödarääkimisi ning valearusaamu projekti teostusprotsessist.
- Ettenägematud takistused projekti teostamisel, millest tingituna võib mingi soovitud funktsionaalsuse õigeaegne valmisjõudmine olla küsitav (näiteks ühe või mitme meeskonnaliikme haigestumine, jms).
Projekti teostusega kaasnevad võimalused (O):
- Projekti edasiarendamine tulevikus.
- Rakenduse reaalne jõudmine kasutusse.
Projekti teostusega kaasnevad ohud (T):
- Projekti rakendusega ei ole jõutud soovitud faasi ehk faasi, kus rakenduse funktsionaalsused hõlmaksid kõiki Must have nimekirjas väljatoodud funktsionaalsusi ning rakenduse prototüüpi ei ole võimalik esitleda (see tähendab, et rakenduse prototüübi töös esineks vigu, mis oleksid takistuseks projekti käigus loodud rakenduse prototüübi ja selle juurde kuuluvate erinevate funktsionaalsuste esitlemisel).
- Projekti teostamise käigus võib ilmneda asjaolu, et rakendust ei ole võimalik soovitud kujul teostada.
Projektihoidla
https://teamtrackplace.visualstudio.com/TrackPlace/
Logi
- 11.september 2017 Meeskonna moodustamine
- 27.september 2017 Idee paikapanek
- 04.oktoober 2017 Projekti idee algversioon pildina
- 21.oktoober 2017 Wikilehe loomine
- 22.oktoober 2017 Projektihalduskonto loomine
- 05.oktoober 2017 Analüüsi koostamine