teisipäev, 29. november 2011

Prototüüp

Kõigepealt, "first things first": Koodi leiab siit, pakituna RAR arhiivi.
Kood on väga kaootiline ja väga katki, töötavat prototüüpi ei ole õnnestunud siiamaani saavutada,mis tähendab, et tähtaegadest kinnipidamisega on meil suuri raskusi.

laupäev, 22. oktoober 2011

Rakenduse analüüs

Projekti eesmärk on siis luua laeva meeskonna munsterrolli (kes ei tea, siis see on selline nimekiri, kus on kirjas kõik laeva meeskonnaliikmete nimed, sünniajad ja ametikohad osakondade kaupa) tegemise programm. “Lõpp-produktiks“ on füüsiliselt väljaprinditav paber, mille kinnitab laeva kapten isiklikult igakord enne sadamast väljumist. Munsterroll on väga tähtis dokument laevas. See peab olema alati korrektselt vormistatud ja loomulikult sisult ka õige.

Loodav programm peaks lõpptulemusena olema C# programmeerimiskeeles kirjutatud kasutajale võimalikult mugav ja lihtne ning loodetavasti ka silmale ilus rakendus, mida igapäevaselt kasutada. Andmebaasiks, kus hoitakse andmeid saab meil olema Microsofti enda SQL ja graafiline pool teostatakse WPF-iga, päringuteks kasutame LINQ abi.

Rakenduse eesmärk on võimaldada igapäevaselt luua kiirelt laeva meeskonna munsterrolli, registreerida uut laevapereliiget andmebaasis,muuta olemasolevaid andmeid andmebaasis, teostada andmebaasis erinevaid otsinguid(nt. kas laevapereliige on varasemalt töötanud meil, mis dokumendid/sertifikaadid tal on olemas ja kas need veel kehtivad) ja palju muud. Loodav rakendus on kasutatav laevadel(nt. suurema meeskonna arvuga reisilaevadel, aga ka väiksematel alustel), aga miks mitte ka mujal kus sarnane funktsionaalsus vajalik. Laevadel on see tüürimehele, kes vastutab laevapereliikmete dokumentide ja munsterrolli tegemise eest, väga hea abimees.

Projekti edukaks täideviimiseks võib üheks problemaatiliseks kohaks osutuda eelneva IT-alase projekti meeskonnatöö kogemuse puudumine-ressursside jagamine(nt. „topelttöö“ tegemise võimalus) ja mõistlik koordineerimine, omavahelise info jagamine. Seoses sellega et, kõik kolmekesi elame eri linnades ja kokku eriti ei saa, on loodud ühine Dropbox kaust, kus hoiame materjali ja muud tarvilikku, ühine Skype grupp vahetumaks suhtlemiseks, mõtete ja arvamuste jagamiseks.
Veel tuleb kindlasti paika panna äriloogika, mille alusel hakatakse rakendust looma. Enne kui alustada, peavad kõik projektis osalejad saama aru loodava rakenduse eesmärgist ning ülesehitusest. Selleks on kõik osalejad pannud kirja oma mõtted ja arvamused paberil, millest on välja kujunenud üks kindel ettekujutus projektist.

Kindlasti tuleb paika panna omavaheline tööjaotus. See aitab ressursse jagada, välistab või vähemalt minimeerib topelttöö tegemise võimaluse. Osalejad teavad millega keegi tegeleb.

Tooksin järgnevalt välja funktsionaalsuse kirjelduse, mis peaks sellel programmil minimaalselt olema lõpuks ehk siis „must have“ funktsionaalsus :
a) Meeskonnaliikmete registreerimine andmebaasi(st. tema ees-ja perekonnanimi, sünniaeg, kodakondsus, sünnikoht, isikukood, häirenumber, kajuti number, kui on siis ka meiliaadress)
b) Meeskonnaliikme andmete muutmine andmebaasis
c) Meeskonnaliikme kustutamine andmebaasist
d) Meeskonnaliikme dokumentide andmete sisestus andmebaasi(st. dokumendi nimi, dokumendi number, väljaandmise kuupäev, kehtivuse kuupäev kui on)
e) Meeskonnaliikme sobivuse kontroll vastavalt tema ametikohale(st. kõik nõutavad dokumendid olemas ja kehtivad)
f) Dokumentide kehtivuse kontroll( nt. hoiatus kui alla 30 päeva)
g) Otsing(st. otsing andmebaasist nime, dokumendi aegumiskuupäeva järgi )
h) Munsterrolli väljatrükk( nii printer kui pdf-iks)

Järgnevalt funktsionaalsus, mis võiks olla(„nice to have“) või mille teeme hiljem kui lõppkuupäevaks ei jõua:
a) Programmile juurdepääs salasõna kaudu
b) Erinevad väljatrükid vastavalt teostatud päringutele
c) Meilifinktsionaalsus-kui kasutaja andmetesse on sisestatud meiliaadress, siis saadetakse ka sinna meeldetuletus dokumendi aegumise kohta
d) Nt. avalehekülg võiks kuvada 30 päeva jooksul aeguvate dokumentide omanikud, koos dokumendi nime ja kuupäevaga
e) Laevapereliikme staazi arvutus ja väljaprint
f) Külaliste munsterrolli tegemine
Lisaks eelnevalt loetletud võimalustele võib kindlasti hiljem lisada funktsionaalsust ja seda me ka kindlasti teeme.


Ülesanded üritasime jagada enamvähem võrdselt: Marek tegeleb Visuaalse poolega ja selle ühendamisega programmi sisuga, Kaarli valmistab printimise funktsionaalsuse ja Indrekule jääb valmistada sisemine keemia, koos sinna juurde kuuluvate klassidega. Dokumentatsioon, kujuneb programmi arenemise käigus, paralleelselt programmi valmimisega.
Programm saab olema oma lihtsale olemusele vaatamata päris suur väljakutse, kuna juurde tuleb õppida....enamvähem kõik, mis programmi kirjutamisega kaasneb :)

reede, 14. oktoober 2011

Algus

Tehtud siis ühine Skype grupp, Dropboxi kaust ja ühine google docs'i joonis. Materjali jagamiseks ja äriloogika ühiseks arutamiseks. Algus on tehtud:-)

neljapäev, 13. oktoober 2011

Projekti idee

 1.Projekti eesmärgid/idee

Idee ise tuli elust enesest. Kõik me kolmekesi oleme mere peal tööl ja tekkis idee teha selline programm lihtsustamaks meie kõigi tööd. Kui selle valmis saame siis, on tegemist väga praktilise ja igapäevselt kasutatava programmiga.

 Projektil on 2 peamist eesmärki:
a) Laeva meeskonna munsterrolli (kes ei tea, siis see on selline nimekiri, kus on kirjas kõik laeva meeskonnaliikmete nimed, sünniajad ja ametikohad osakondade kaupa) tegemine. Võib tunduda lihtne kasvõi excelis teha selline, aga kui sul on 400 inimest meeskonnas, kes vahetuvad ülepäeva st. toimub pidev roteerumine ja meeskonna vahetus, siis läheb asi keerulisemaks. Lõpp-produktiks on füüsiliselt väljaprinditav paber, mille kinnitab laeva kapten igakord enne sadamast väljumist.
b) Laeva meeskonnaliikmete dokumentide/sertifikaatide haldamine/ kontroll . Igal meeskonnaliikmel peavad olema vastavalt ametikohale nõutavad dokumendid ja sertifikaadid. Programmi kasutajal jälgida ja teavitada eelnevalt meeskonnaliiget tema  paberite kehtivuse lõppemist ja suunata vastavale kursusele ja/või väljaõppele.  Peab olema mehhanism ametiprofiilide loomiseks, st. et, saaks lihtsalt määrata, milliseid dokumente mingi ametikoht vajab.


2. Mida programm peab võimaldama(miinimum ehk „must have“)
a) Uue meeskonna liikme registreerimine( tema andmete lisamine andmebaasi  st. tema nime, sünniaja, tal olevate dokumentide( st. dokumnedi nr, väljaandmisaja, aegumisaja) registreerimine andmebaasis),  nime otsing ja selle järgi dokumentide kuvamine.
b) Rolli väljatrükk
pdf + printer

3. Mida programm võiks võimaldada(„nice to have“)
a) Meili saatmine, töötajale dokumendi aegumise korral 

4. Mida programm sisaldab
a) Andmebaas andmete hoidmiseks.
SQL( + LINQ)
b) Mugav ja loogiline graafiline kasutajaliides

5. Kasutusala
Suuremad reisilaevad(meeskonna arv ca. 400), aga ka väiksemate kauba- ja reisilaevad.

Meie meeskond

Meeskonna nimeks saab olema-SVS.
Meeskonnaliikmeteks on:
Indrek Soostar-projektijuht
Marek Reinhold
Kaarli Metsniit

Blogi "point"

See blogi on loodud eelkõige ITK õppeaine "Programmeerimine C# keeles" raames. Õppeaine väljundiks peab olema kodune projekt vähemalt 3 inimesega meeskonnas. Blogi eesmärk on kirjeldada ja kajastada selle projekti käiku.