Meeskond: MinuKV: Difference between revisions

From ICO wiki
Jump to navigationJump to search
Aelken (talk | contribs)
Sohlo (talk | contribs)
 
(One intermediate revision by one other user not shown)
Line 78: Line 78:


     Rakenduse kasutajaliides on väga kasutajasõbralik ja lihtne navigeerida. Programmi kasutajaliides koosneb kolmest   
     Rakenduse kasutajaliides on väga kasutajasõbralik ja lihtne navigeerida. Programmi kasutajaliides koosneb kolmest   
     vaatest: 1) Sisselogimise/Registreerimine, 2) Kuulutuste otsimine, 3) Uue kuulutuse lisamine. Pärast rakenudse          
     vaatest: 1) Sisselogimine/Registreerimine, 2) Kuulutuste otsimine, 3) Uue kuulutuse lisamine. Pärast rakenduse          
     käivitamist kuvatakse kasutajale Sisselogimise/Registreerimise aken, kus saab end süsteemi uueks kasutajaks   
     käivitamist kuvatakse kasutajale Sisselogimise/Registreerimise aken, kus saab end süsteemi uueks kasutajaks   
     registreerida,  
     registreerida,  
Line 86: Line 86:
     Kui sisselogimisel sisestatud kasutajaandmed ei olud korrektsed, siis kuvatakse süsteemi poolt ekraanile   
     Kui sisselogimisel sisestatud kasutajaandmed ei olud korrektsed, siis kuvatakse süsteemi poolt ekraanile   
     veateade "Viga!  
     veateade "Viga!  
     Sisestage valiidne email". Seega tuelks üle kontrollida, kas sisestati õiged andmed ja proovida uuesti sisse logida.  
     Sisestage valiidne email". Seega tuleks üle kontrollida, kas sisestati õiged andmed ja proovida uuesti sisse logida.  
     Kui sisselogimine õnnestus, siis suunatakse kasutaja edasi "Kuulutuste otsimise" vaatesse, kus kasutaja saab otsida  
     Kui sisselogimine õnnestus, siis suunatakse kasutaja edasi "Kuulutuste otsimise" vaatesse, kus kasutaja saab otsida  
     kinnisvara  
     kinnisvara  
     kuulutusi/pakkumisi. Kuulutuste otsimise aken koosneb järgmistest elementidest: Tehing, Tüüp, Linn, Tubade Arv,  
     kuulutusi/pakkumisi. Kuulutuste otsimise aken koosneb järgmistest elementidest: Tehing, Tüüp, Linn, Tubade Arv,  
     Hinnavahemik, Ruutmeetrid rippmenüü, "Otsi" nupp, Otsingutulemuste kuvamise kast. Lisaks asuvad akna ülemises ääres  
     Hinnavahemik, Ruutmeetrid rippmenüüd, "Otsi" nupp, Otsingutulemuste kuvamise kast. Lisaks asuvad akna ülemises ääres  
     järgmised valikud: "Värskenda andmeid", "Lisa uus kuulutus", "Minu kuulutused", "Koik kuulutused", "Välju" nupp,  
     järgmised valikud: "Värskenda andmeid", "Lisa uus kuulutus", "Minu kuulutused", "Koik kuulutused", "Välju" nupp,  
     kasutajanimi ning "hammasratta" ikooniga nupp, mis kuvab kasutaja andmed (Eesnimi, Perenimi, Email, Parool). "Värskenda  
     kasutajanimi ning "hammasratta" ikooniga nupp, mis kuvab kasutaja andmed (Eesnimi, Perenimi, Email, Parool). "Värskenda  
     andmeid" nupp laeb andmebaasist alla kõik kuulutused. "Lisa uus kuulutus" nupp kuvab kasutajale vaate, kus saab täita  
     andmeid" nupp laeb andmebaasist alla kõik kuulutused. "Lisa uus kuulutus" nupp kuvab kasutajale vaate, kus saab täita  
     vastavad välad ja lisada uue kuulutuse. "Minu kuulutused" nupp kuvab kõik konkreetse sisselogitud kasutaja poolt  
     vastavad väljad ja lisada uue kuulutuse. "Minu kuulutused" nupp kuvab kõik konkreetse sisselogitud kasutaja poolt  
     avaldatud  
     avaldatud  
     kuulutused. "Koik kuulutused" nupp kuvab kõik kuulutused, mis asuvad andmebaasis sõltumata omanikust. "Välju" nupp  
     kuulutused. "Koik kuulutused" nupp kuvab kõik kuulutused, mis asuvad andmebaasis sõltumata omanikust. "Välju" nupp  
Line 102: Line 102:
     kinnisvara tüübi (Korter, Maja, Suvila jne). Linn rippmenüü kuvab linnade loetelu. Tubade arvu rippmenüü kuvab tubade  
     kinnisvara tüübi (Korter, Maja, Suvila jne). Linn rippmenüü kuvab linnade loetelu. Tubade arvu rippmenüü kuvab tubade  
     arvu  
     arvu  
     loetelu. Hinnavahemiku lahtirdid võimaldavad kasutajal sisestada soovitud hinnavahemikku. Suuruse vahemik võimaldab  
     loetelu. Hinnavahemiku lahtrid võimaldavad kasutajal sisestada soovitud hinnavahemiku. Suuruse vahemik võimaldab  
     kasutajal määrata kinnisvara soovitud ruutmeetrite väärtust. "Otsi" nupp filtreerib eelnevalt määratud tingimuste   
     kasutajal määrata kinnisvara soovitud ruutmeetrite väärtust. "Otsi" nupp filtreerib eelnevalt määratud tingimuste   
     põhjal  
     põhjal  
Line 108: Line 108:
     leitud kuulutuste arvule ka teade (nt. "Leitud kuulutused: 2) "Vaata" nupp kuvab uue vaate, kus on näidatud kuulutuste  
     leitud kuulutuste arvule ka teade (nt. "Leitud kuulutused: 2) "Vaata" nupp kuvab uue vaate, kus on näidatud kuulutuste  
     detailid ning kus saab kuulutust ka kustutada või muuta.
     detailid ning kus saab kuulutust ka kustutada või muuta.
     Rakenduse tesit olulist funktsionaalsust täidab "Lisa uus kuulutus" vaade. Antud vaatesse minnes kuvatakse vastavad  
     Rakenduse teist olulist funktsionaalsust täidab "Lisa uus kuulutus" vaade. Antud vaatesse minnes kuvatakse vastavad  
     rippmenüüd ja tekstiväljd, kus kasutaja saab sisestada andmed ja avaldada uue kuulutuse.
     rippmenüüd ja tekstiväljd, kus kasutaja saab sisestada andmed ja avaldada uue kuulutuse.


Line 155: Line 155:
*Visual Studio Online-ga tutvumine lähemalt, senise töö üleslaadimine ja MVVMiga tegelemine.
*Visual Studio Online-ga tutvumine lähemalt, senise töö üleslaadimine ja MVVMiga tegelemine.
==13.12 prototüüp==
==13.12 prototüüp==
*Senine töö [http://enos.itcollege.ee/~sohlo/MinuKV.7z siin.]
*Senine töö [http://enos.itcollege.ee/~sohlo/MinuKV-prototüüp.7z siin.]
 
==15.01 prototüüp==
==15.01 prototüüp==
*Sisselogimise, väljalogimise ja registreerumise funktsionaalsuste lisamine rakendusse.
*Sisselogimise, väljalogimise ja registreerumise funktsionaalsuste lisamine rakendusse.

Latest revision as of 23:47, 20 January 2016

C# projekt MinuKV

Meeskonna nimi: MinuKV

Projekt

Kinnisvara maaklerite CRM.

Meeskonna koosseis

  • Martin Luik
  • Ahto Elken
  • Silver Ohlo

Projektijuht: TBA

Projektist

Analüüs

Käesolev kirjutis kujutab endast aine "Programmeerimine C# keeles” raames teostatava ühisprojekti analüüsi. Oma meeskonna nime valimisel lähtusime projekti aluseks oleva rakenduse sisust ehk siis meie meeskonna nimeks sai ühisel otsusel MinuKV (loe: Minu Kinnisvara). Meeskonna koosseisu kuulub 3 liiget: Martin Luik, Ahto Elken, Silver Ohlo.

Alljärgnevalt anname lühida ülevaate projektist ja selle eesmärkidest. Tegu on kinnisvara maaklerite CRM (ingl. Customer Relationship Manager) süsteemiga. Projekti teostamiseks kasutame järgnevaid tehnoloogiaid: C#, Windows Presentation Foundation, Entity Framework, LINQ. Seega kujutab rakendus endast WPF (Windows Presentation Foundation) raamistikul põhinevat desktop applikatsiooni, mille sisuks on kinnisvara kliendisuhete haldussüsteem.

Rakenduse eesmärgiks on pakkuda maakleritele ja klientidele keskkonda, mis võimaldab maakleritel lisada süsteemi kinnisvara objekte ning siduda huvilised objektidega. Maaklerid saavad registreerida end firma alt või FIE-na. Kliendid saavad pakkumisi vaadata sisselogituna (nice to have) või anonüümselt (must) ehk huvi tundmisel saavad jätta kommentaari enda nime ja meiliga. Huvilise ehk kliendi profiili saab hiljem täiendada. Täienduste alla kuuluvad kohtumiste logi, spetsiaalsed soovid, mille kaudu saaks klientidele soovitada kliendile muid pakkumisi.

Rakendus sisaldab endas graafilist kasutajaliidest (GUI ehk Graphical User Interface) lokaalse kinnisvara andmebaasiga. Andmebaas kujutab endast Entity Framework’il põhinevat ja LINQToEntities päringukeelt kasutavat kinnisvara andmekogumit, kuhu maaklerid saavad lisada kinnisvara pakkumisi.

Rakendus hõlmab endas paljudokumendilist töökeskkonda (MDI ehk multiple-document interface), mis võimaldab mugavalt navigeerida erinevate tööakende (sh kasutajakonto, pakkumiste kirjeldus, kontaktid jt) vahel. Rakenduse käivitamisel kuvatakse kasutajale süsteemi sisselogimise dialoogiaken, kus kasutaja sisestab oma kasutajanime ja parooli, mille vastavust kontrollitakse WPF rakenduses asuva kohaliku (ingl. local database) andmebaasi kirjetega. Alternatiivselt sisenetakse ajutise külalisena, millel puuduvad erinevad hüved. Eduka sisselogimise järgselt suunatakse kasutaja edasi uude vaateaknasse, kus maakler saab sisestada ja redigeerida kinnisvara pakkumisi (info, pildid, kaardiinfo, kontaktandmed jne).

Tavakasutajale on antud meie rakenduse eesmärgist lähtuvalt vähem õigusi kui maakleritele. Tavakasutaja võib luua endale konto, et süsteemi sisselogida või kasutab süsteemi anonüümselt. Tavakasutajal ei ole õigusi kinnisvara pakkumisi sisestada või neid regigeerida. Tavakasutaja saab süsteemist kasu ennekõike kui mugavast ja ülevaatlikust viisist info hankimiseks erinevate kinnisvara pakkumiste kohta, et langetada talle sobilikke otsuseid soodsate ja kasulike võimaluste osas. Kõikidel kasutajatel on võimalik hallata oma kontakte filtritega, mille tulemusena peaks kahepoolne suhtlus kliendi ja maaklri vahel olema sujuvam kui on võimalik eraldada käimasolevad läbirääkimised, lõpetatud tehingud, oksjonite hinnapakkumised ja muud kihid otsitavast.

Problemaatiliseks võib osutuda näiteks teatud keerulisemate või töömahukamate funktsionaalsuste (nagu nt kaardiinfo, oksjonisüsteem jt) täielik realiseerimine tulenevalt võimalikust ajapuudusest. Lisaks sellele ka erinevate rakenduskihtide või andmebaaside omavaheline effektiivne sidumine.

Must have

  • Sisselogimise- ja registreerimise funktsionaalsus
  • Kõikide lisatud pakkumiste kuvamine avalehel.
  • Saadaval on erinevad filtrid, lihtsustades soovitud pakkumiste leidmist,
  • Anonüümselt saab küsimusi küsida ja hinnapakkumisi teha. Vajalikud on nimi ja e-mail, kuhu maakler saab enda vastuse saata (väljaspool süsteemi) ehk maakler peab nägema huvilise reageeringu sisu.
  • Maaklerid saavad sisestada, muuta ja kustutada enda sisestatud kinnisvara kuulutusi,
  • Võimalik on sisestada teksti ehk täita väljad ja lisada pildimaterjali (esialgu üks pilt),
  • Maakleril on võimalik kontakte hallata ehk näeb, milline huviline on mis pakkumisega seotud ehk sellele reageerinud

Nice to have

  • Kasutajate postkasti haldus vastavalt jooksvatele läbirääkimistele, hinnapakkumistele, küsimustele vms.
  • Keskonda saavad registreeruda ka tavakasutajad.
  • Kasutajatel on samuti võimalik kõrgema prioriteediga küsimusi esitada ja hinnapakkumisi teha võrreldes mittekasutajatega,
  • Kasutajad saavad "follow"-ida pakkumisi. Selle tulemusena teavitatakse kasutajat muutuste ja uuenduste osas (Näiteks hinna muutus või maakler vastas kasutaja küsimusele),
  • Registeeritud kasutajad saavad jätta tagasisidet maakleri kohta, kaebusi ehk nn hinnangusüsteem.
  • Maakleritel on võimalik panna ühistuid oksjonitele, kuhu pakkumisi saavad teha ainult registreeritud kasutajad,
  • Maakleritel on võimalik lisada rohkem kui üks pilt iga kuulutuse juurde,
  • Postkasti suunamine,
  • Kaartide implemeteerimine,
  • Uudiskirjad kasutajatele.


Ülevaade

Eesmärk on luua kinnisvara maakleritele kliendisuhete haldamissüsteem. Maaklerid saavad registreerida end firma alt või FIE-na. See süsteem võimaldab maakleritel lisada kinnisvara pakkumisi (korter, maja) ning siduda huvilised objektidega. Kliendid saavad pakkumisi vaadata anonüümselt, kuid huvi tundmisel saavad jätta kommentaari enda nime ja meiliga. Huvilise ehk kliendi profiili saab hiljem täiendada. Täienduste alla kuuluvad kohtumiste logi, spetsiaalsed soovid, mille kaudu saaks klientidele soovitada kliendile muid pakkumisi.

Kasutatame projekti tegemisel

Kasutatav tehnoloogia: C#, Windows Presentation Foundation, Entity Framework, LINQ

Kasutatav muster: MVVM

Rakenduse kasutusjuhend

Käesolev dokument sisaldab kasutusjuhendit töötamiseks rakendusega MinuKV.

1. Programmi installeerimine

   Programmi MinuKV installeerimiseks paki lahti MinuKV.rar fail sobilikku kausta C: kettal. Pärast lahtipakkimist leiad  
   kaustast programmi käivitamise faili nimega MinuKV.exe.

2. Programmi käivitamine

   Programmi käivitamiseks tee topeltklikk failil MinuKV.exe. Avaneb rakenduse MinuKV kasutajaliides.

3. Programmi kasutamine

   Rakenduse kasutajaliides on väga kasutajasõbralik ja lihtne navigeerida. Programmi kasutajaliides koosneb kolmest   
   vaatest: 1) Sisselogimine/Registreerimine, 2) Kuulutuste otsimine, 3) Uue kuulutuse lisamine. Pärast rakenduse          
   käivitamist kuvatakse kasutajale Sisselogimise/Registreerimise aken, kus saab end süsteemi uueks kasutajaks   
   registreerida, 
   sisestades enda eesnime, perenime, e-maili aadressi, telefoni ja parooli ning seejärel vajutades nupul "Loo kasutaja". 
   Süsteemis eelnevalt juba registreeritud kasutaja saab end Sisselogimise/Registreerimise akna kuvamisel sisselogida 
   kasutades selleks oma e-maili aadressi ja parooli.
   Kui sisselogimisel sisestatud kasutajaandmed ei olud korrektsed, siis kuvatakse süsteemi poolt ekraanile  
   veateade "Viga! 
   Sisestage valiidne email". Seega tuleks üle kontrollida, kas sisestati õiged andmed ja proovida uuesti sisse logida. 
   Kui sisselogimine õnnestus, siis suunatakse kasutaja edasi "Kuulutuste otsimise" vaatesse, kus kasutaja saab otsida 
   kinnisvara 
   kuulutusi/pakkumisi. Kuulutuste otsimise aken koosneb järgmistest elementidest: Tehing, Tüüp, Linn, Tubade Arv, 
   Hinnavahemik, Ruutmeetrid rippmenüüd, "Otsi" nupp, Otsingutulemuste kuvamise kast. Lisaks asuvad akna ülemises ääres 
   järgmised valikud: "Värskenda andmeid", "Lisa uus kuulutus", "Minu kuulutused", "Koik kuulutused", "Välju" nupp, 
   kasutajanimi ning "hammasratta" ikooniga nupp, mis kuvab kasutaja andmed (Eesnimi, Perenimi, Email, Parool). "Värskenda 
   andmeid" nupp laeb andmebaasist alla kõik kuulutused. "Lisa uus kuulutus" nupp kuvab kasutajale vaate, kus saab täita 
   vastavad väljad ja lisada uue kuulutuse. "Minu kuulutused" nupp kuvab kõik konkreetse sisselogitud kasutaja poolt 
   avaldatud 
   kuulutused. "Koik kuulutused" nupp kuvab kõik kuulutused, mis asuvad andmebaasis sõltumata omanikust. "Välju" nupp 
   logib 
   kasutaja rakendusest välja. 
   Tehingu rippmenüü alt kuvatakse kinnisvara tehingu liikide (Ost, Müük, Rent) loetelu. Tüüp rippmenüüst saab valida 
   kinnisvara tüübi (Korter, Maja, Suvila jne). Linn rippmenüü kuvab linnade loetelu. Tubade arvu rippmenüü kuvab tubade 
   arvu 
   loetelu. Hinnavahemiku lahtrid võimaldavad kasutajal sisestada soovitud hinnavahemiku. Suuruse vahemik võimaldab 
   kasutajal määrata kinnisvara soovitud ruutmeetrite väärtust. "Otsi" nupp filtreerib eelnevalt määratud tingimuste   
   põhjal 
   välja sobivad kuulutused ning kuvab need loeteluna üksteise all vastavas kastis. Loetelu kasti all kuvatakse vastavalt 
   leitud kuulutuste arvule ka teade (nt. "Leitud kuulutused: 2) "Vaata" nupp kuvab uue vaate, kus on näidatud kuulutuste 
   detailid ning kus saab kuulutust ka kustutada või muuta.
   Rakenduse teist olulist funktsionaalsust täidab "Lisa uus kuulutus" vaade. Antud vaatesse minnes kuvatakse vastavad 
   rippmenüüd ja tekstiväljd, kus kasutaja saab sisestada andmed ja avaldada uue kuulutuse.

Logi

31.08

  • Tiimi kokku panek
  • FB kommuuni tekitamine

03.09

  • Ideede genereerimine

17.09

  • Õppejõu tagasiside abil CRM kasuks otsustamine

04.10

  • Kaitsmisaja/tähtaja kokkuleppimine 14.12 kell 17.30
  • Rühma ja tiimi nime mõtlemine
  • Süsteemi funktsionaalsuste ja esimeste mockup'ide tegemine

21.10

  • Visual Studio Online konto tegemine

25.10

  • WIKI lehekülje tegemine

01.11

  • Analüüsi esitamine

05.11

  • Esimene andmebaasi mudeli iteratsioon

Andmebaasi mudel

07.11

  • Piltide loomine sellest kuidas projekt võiks välja paista
  • Retsensioon meeskonna mc2 analüüsist

14.11

  • Konsultatsioon õppejõuga

26.11

  • WPF vaadete valmimine

30.11

  • Visual Studio Online-ga tutvumine lähemalt, senise töö üleslaadimine ja MVVMiga tegelemine.

13.12 prototüüp

15.01 prototüüp

  • Sisselogimise, väljalogimise ja registreerumise funktsionaalsuste lisamine rakendusse.

Viited