Meeskond Margus Tonis: Difference between revisions

From ICO wiki
Jump to navigationJump to search
Mroo (talk | contribs)
Mroo (talk | contribs)
 
(26 intermediate revisions by the same user not shown)
Line 3: Line 3:
Loodav tarkvara realiseerib lihtsat laoarvestuse funktsionaalsust. Kuigi lahendus luuakse näidisprojektina, võib tarkvara olla kasutatav väiksema ettevõtte laoarvestustarkvarana.
Loodav tarkvara realiseerib lihtsat laoarvestuse funktsionaalsust. Kuigi lahendus luuakse näidisprojektina, võib tarkvara olla kasutatav väiksema ettevõtte laoarvestustarkvarana.
Projekt annab ülevaate meeskonna oskustest CSharp keeles MSSQL, klasside ja VPF kasutamisest.
Projekt annab ülevaate meeskonna oskustest CSharp keeles MSSQL, klasside ja VPF kasutamisest.


=Tööjaotus=
=Tööjaotus=
Line 8: Line 9:
* Margus Roo (margus@roo.ee) - projektijuht
* Margus Roo (margus@roo.ee) - projektijuht
* Tõnis Luik
* Tõnis Luik


=Analüüs=
=Analüüs=
[[Talk:Meeskond_Duo| Retsensioon meie analüüsi kohta]]


* Arendusvahendiks on MS Visual Studio 2012
* Arendusvahendiks on MS Visual Studio 2012
Line 74: Line 78:
* Kasutajal on võimalik seadistada iga tooteartikli kohta kriitiline level, mida kontrollitakse ja informeeritakse kasutajat teatega, et vastavat tooteartiklit on laos vähem kui määratud.
* Kasutajal on võimalik seadistada iga tooteartikli kohta kriitiline level, mida kontrollitakse ja informeeritakse kasutajat teatega, et vastavat tooteartiklit on laos vähem kui määratud.
* Tooteartiklit saab siduda mitme tarnijaga, kuna laos olev toode võib sisaldada mitme tarnija komponente.
* Tooteartiklit saab siduda mitme tarnijaga, kuna laos olev toode võib sisaldada mitme tarnija komponente.


=Prototüüp=
=Prototüüp=
* Projektikood asub aadressil [http://enos.itcollege.ee/~mroo/Database_design_v1.rar Prototüüp]
Pakkides rar faili lahti on kataloogis Database_design_v1 antud projekti Visual Studio's arendatud kood. Avades VisualStudio projektifaili Home_work, siis avaneb projekt. TFS ühenduda ei ole vaja. Vajutades CTRL + F5 avaneb rakendus.
Võib avada ka valmis kompileeritud binary WpfLadu/bin/Debug/WpfLadu.




[[File:Proto_4.png]]
==Funktsionaalsus, mis peaks toimima==
* Saab sisestada andmeridu. (Sisestamiseks viimasele reale hakata lisama informatsiooni ja tab klahviga liikudes väljade vahel. Viimaselt väljalt minema liikudes viiakse uus kirje andmebaasi, mille edukast tulemusest ka kasutajat vastavasisulise popup'ga teavitatakse)
* Andmeridu saab kustutada ühe või mitmekaupa. Aktiviseerides rea/read ja vajutades klahvi Delete.
* Andmeridu saab muuta. (Muutmiseks aktiveerida vajalik väli ja peale muutmist sealt lahkumist viiakse vastav muudatus andmebaasi, edukast muudatusest annab teada ka vastavasisuline popup)
* Andmeridu saab sorteerida
 
 
 
==Funktsionaalsis, mis ei toimi==
* Abitabelite (types, currency, supplier) administreerimine GUI kaudu puudub. Samuti ei teisenda GUI hetkel abitabelite ID'd nimedeks, seega GUI näitab Type, Supplier ja Currency ridades vastavaid ID'd
 
 
[[File:Proto_6.png]]


=Lõpptoode=
=Lõpptoode=


...
* Tooteid saab lisada, muuta (vastava välja peal tehes muudatuse ja sealt lahkudes) ja kustutada
* Tooteid saab siduda abitabelites olevate kirjetega
* Abitabeleid (Supplier, Currency, Types) saab lisada, muuta (vastava välja peal tehes muudatuse ja sealt lahkudes), kustutada
* Sisendandmete kontroll
 
[http://enos.itcollege.ee/~mroo/Database_design_v3.rar lõpptoode]
 
Lahendus tuleb alla laadida, lahti pakkida ja minna kataloogi Database_design_v1/WpfLadu/bin/Release/, avada application WpfLadu


=Logi=
=Logi=
Line 92: Line 122:
* 14.11.2013 - Realiseeritud kõikide elementide vajalikud klassid. Lisaks meetodid, mis lubavad tooteartikli numbrilisi väärtusi nimelisteks muuta.
* 14.11.2013 - Realiseeritud kõikide elementide vajalikud klassid. Lisaks meetodid, mis lubavad tooteartikli numbrilisi väärtusi nimelisteks muuta.
* 21.11.2013 - Projekt versioonihaldusesse https://margusja.visualstudio.com ja meeskonnale ning Mait Poska'le ligiääs loodud
* 21.11.2013 - Projekt versioonihaldusesse https://margusja.visualstudio.com ja meeskonnale ning Mait Poska'le ligiääs loodud
* 27.11.2013 - Lisamise real saab valida abitabelites olevaid tekstiväärtusi. [https://margusja.visualstudio.com/DefaultCollection/ITK_homework/_versionControl/changeset/10 changeset10]
* 28.11.2013 - ComboBox tekstiväärtused läbi vastava [object]Utils'i. Loodame, et ajutine lahendus. Väga halb lahendus. Kui aega, teeme ümber. [https://margusja.visualstudio.com/DefaultCollection/ITK_homework/_versionControl/changeset/11 changeset11]
* 01.12.2013 - Lisatud kirjed ilmuvad kohe vaatesse [https://margusja.visualstudio.com/DefaultCollection/ITK_homework/_versionControl/changeset/12 changeset12]
* 02.12.2013 - Parem dropdown'de lahendus [https://margusja.visualstudio.com/DefaultCollection/ITK_homework/_versionControl/changeset/13 changeset 13]
* 12.12.2013 - Kogu lahendus DataGrid peale.
* 13.12.2013 - Prototüüp hindamiseks (Antke armu :) )
* 14.12.2013 - Meeskonna koosolekul, mis toimus 14.12.2013 ITK sööklas, otsustasime lõpptootes tagasi pöörduda mitte DataGrid kasutavasse GUI lahendusse.
=Lingid=


* [[Juhend:_Kodut%C3%B6%C3%B6_aines_%22Programmeerimine_CSharp_keeles%22_(Kaug%C3%B5pe2013)| 2013 Meeskonnad]]


[[Category:Programmeerimine CSharp keeles]]
[[Category:Programmeerimine CSharp keeles]]

Latest revision as of 21:01, 5 January 2014

Kirjeldus

Loodav tarkvara realiseerib lihtsat laoarvestuse funktsionaalsust. Kuigi lahendus luuakse näidisprojektina, võib tarkvara olla kasutatav väiksema ettevõtte laoarvestustarkvarana. Projekt annab ülevaate meeskonna oskustest CSharp keeles MSSQL, klasside ja VPF kasutamisest.


Tööjaotus

  • Margus Roo (margus@roo.ee) - projektijuht
  • Tõnis Luik


Analüüs

Retsensioon meie analüüsi kohta

  • Arendusvahendiks on MS Visual Studio 2012
  • Programmeerimiskeel on MS CSharp
  • Andmebaasimootoriks on MS SQL
  • Graafiline kasutajaliides luuakse VPF tehnoloogiat kasutades, XAML keeles

Versioonihaldus asub https://margusja.visualstudio.com/

andmebaasistruktuur

Klasside struktuur

  • Libraries
    • Currency - Valuta objekt
    • Items - Tooteartikli objekt
    • ItemNamed - Tooteartikli objekt, kus abitabelitest võetakse tooteartiklile nimelised seosed.
    • ItemType - Tooteartikli tüübi objekt
    • Supplier - Tarnija objekt
  • Utils
    • CurrencyUtils - Valuutatabeliga seonduvad toimingud
    • ItemUtils - Tooteartikli tabeliga seonduvad tegevused
    • SupplierUtils - Tarnijate tabeliga seonduvad tegevused
    • TypeUtils - Tooteartikli tüüpid tabeliga seonduvad tegevused
  • WPF
    • ViewModels -> MainVindowVM, kus kasutades vastava Utils library, teostatakse WPF rakenduse funktsionaalsust (load, update, insert, delete)

Must have

Kasutajal on võimalus graafilise kasutajaliidese kaudu sisestada, muuta ja kustutada allolevaid kirjeid, mida hiljem saab tooteartikliga siduda:

  • currency (ID, nimi)
  • type(tk kast, tünn jne) (ID, nimi)
  • supplier(ID, nimi, aadress, e-mail, telefon)
  • customer (ID, nimi, aadress, e-mail, telefon) Kuigi andmestruktuur kattub tarnija omaga, siis hoian kliendid selguse huvides eraldi tabelis.

Eelpool toodud subjekte ei saa kustutada juhul kui ta on seotud mõne tooteartikliga.

Kasutaja saab sisestada, tooteartiklit (item), mis koosneb:

  • Toote id (SKU) - Unikaalne kood
  • Toote nimi
  • Kogus
  • Seos tooteühikuga
  • Seos rahaühikuga
  • Seos(ed) tarnijatega

Siduda seda eelpool toodud abikirjetega:

  • Tooteartiklit saab siduda ühe tooteühikut kirjeldava kirjega.
  • Tooteartiklit saab siduda ühe rahaühikut kirjeldava kirjega.
  • Tooteartiklit saab siduda tarnijaga.
  • Tooteartiklit saab siduda ühe kliendiga.


Kasutajal on võimalus luua tooteartikli kohta väljamineku kirjeid ehk müügi arhiivi:

  • Väljaminekute tabelisse luuakse seos tootega, - kliendiga ja kogus ning väljamineku kuupäev.
  • Tooteartikli tabelist arvestatakse väljamineku kogus maha. Juhul kui välja minev kogus on suurem kui tooteartiklit laos, väljastatakse kasutajale vastav teade.


Nice to have

  • Kasutajal on võimalik seadistada iga tooteartikli kohta kriitiline level, mida kontrollitakse ja informeeritakse kasutajat teatega, et vastavat tooteartiklit on laos vähem kui määratud.
  • Tooteartiklit saab siduda mitme tarnijaga, kuna laos olev toode võib sisaldada mitme tarnija komponente.


Prototüüp

Pakkides rar faili lahti on kataloogis Database_design_v1 antud projekti Visual Studio's arendatud kood. Avades VisualStudio projektifaili Home_work, siis avaneb projekt. TFS ühenduda ei ole vaja. Vajutades CTRL + F5 avaneb rakendus. Võib avada ka valmis kompileeritud binary WpfLadu/bin/Debug/WpfLadu.


Funktsionaalsus, mis peaks toimima

  • Saab sisestada andmeridu. (Sisestamiseks viimasele reale hakata lisama informatsiooni ja tab klahviga liikudes väljade vahel. Viimaselt väljalt minema liikudes viiakse uus kirje andmebaasi, mille edukast tulemusest ka kasutajat vastavasisulise popup'ga teavitatakse)
  • Andmeridu saab kustutada ühe või mitmekaupa. Aktiviseerides rea/read ja vajutades klahvi Delete.
  • Andmeridu saab muuta. (Muutmiseks aktiveerida vajalik väli ja peale muutmist sealt lahkumist viiakse vastav muudatus andmebaasi, edukast muudatusest annab teada ka vastavasisuline popup)
  • Andmeridu saab sorteerida


Funktsionaalsis, mis ei toimi

  • Abitabelite (types, currency, supplier) administreerimine GUI kaudu puudub. Samuti ei teisenda GUI hetkel abitabelite ID'd nimedeks, seega GUI näitab Type, Supplier ja Currency ridades vastavaid ID'd


Lõpptoode

  • Tooteid saab lisada, muuta (vastava välja peal tehes muudatuse ja sealt lahkudes) ja kustutada
  • Tooteid saab siduda abitabelites olevate kirjetega
  • Abitabeleid (Supplier, Currency, Types) saab lisada, muuta (vastava välja peal tehes muudatuse ja sealt lahkudes), kustutada
  • Sisendandmete kontroll

lõpptoode

Lahendus tuleb alla laadida, lahti pakkida ja minna kataloogi Database_design_v1/WpfLadu/bin/Release/, avada application WpfLadu

Logi

  • 12.11.2013 - Realiseeritud tooteartikli ja valuuta libraries
  • Prototüübil on näha, et valuuta asendatakse valuuta nimega
  • 13.11.2013 - Salvestamise prototüüp.
  • 14.11.2013 - Realiseeritud kõikide elementide vajalikud klassid. Lisaks meetodid, mis lubavad tooteartikli numbrilisi väärtusi nimelisteks muuta.
  • 21.11.2013 - Projekt versioonihaldusesse https://margusja.visualstudio.com ja meeskonnale ning Mait Poska'le ligiääs loodud
  • 27.11.2013 - Lisamise real saab valida abitabelites olevaid tekstiväärtusi. changeset10
  • 28.11.2013 - ComboBox tekstiväärtused läbi vastava [object]Utils'i. Loodame, et ajutine lahendus. Väga halb lahendus. Kui aega, teeme ümber. changeset11
  • 01.12.2013 - Lisatud kirjed ilmuvad kohe vaatesse changeset12
  • 02.12.2013 - Parem dropdown'de lahendus changeset 13
  • 12.12.2013 - Kogu lahendus DataGrid peale.
  • 13.12.2013 - Prototüüp hindamiseks (Antke armu :) )
  • 14.12.2013 - Meeskonna koosolekul, mis toimus 14.12.2013 ITK sööklas, otsustasime lõpptootes tagasi pöörduda mitte DataGrid kasutavasse GUI lahendusse.

Lingid