Leffe

From ICO wiki
Revision as of 21:52, 5 January 2013 by Jpoolak (talk | contribs) (Logi)

text


Kirjeldus

Oletame, et ühel ettevõttel on käsil üks või mitu projekti, milles omakorda on üks või mitu ülesannet. Ettevõte peab haldama vahendeid ja tegevusi, kuidas projekti eesmärk ja vastava projekti ülesanded õnnestuksid õigeks ajaks. Eriti keeruline on saada selge ülevaade mitme, samal ajal tehtavate, erinevate projektide ülesannete üle. Alati on mingi detail, mis võib jääda märkamatuks ning tuua kaasa ülesande ja\või terve projekti valmimise venimise ja seega tuua firmale majandluslikku kahju.
Siinkohal tulekski appi tarkvara, mis võimaldaks hallata vastavate projektide ülesannetele kulunud ressursse ja nendega seonduvat informatsiooni (materjalid, aeg, koht, tööjõud jne).

Analüüs

Tarkvaralahenduse analüüs: [PDF]

Tutvustus

Ettevõttel on erinevate klientidega käsil üks või mitu projekti. Projekti tüübiks võiks olla IT-infrastruktuuri loomine aga võib olla ka midagi analoogset. Kliendiga on kokku lepitud projekti eesmärk ja tähtajad. Projektiks võib näiteks olla ka igakuine hooldusleping, mis koosneb erinevat laadi ülesannetest. Ettevõte peab aga ise haldama vahendeid ja tegevusi, kuidas projekti eesmärk õnnestuks õigeks ajaks. Eriti keeruline on saada selge ülevaade mitme, samal ajal tehtavate projektide ja ülesannete üle. Keeruliseks teeb siinkohal asjaolu, et näiteks mingit pooleliolevat ülesannet peab asjaolude sunnil jätkama teine inimene. Hea oleks näha kes, kus, millal ja kui palju jõudis teha ning milliseid lisaressursse oleks edasiste ülesannete sooritamiseks vaja. Alati on mingi detail, mis võib jääda märkamatuks ning põhjustada ülesande ja/või projekti valmimise venimise ja seega tuua firmale majandluslikku kahju. Siinkohal tulekski appi tarkvara, mis võimaldaks hallata vastavaid projekte ja nende ülesannetele kulunud ressursse ja nendega seonduvat informatsiooni (materjalid, aeg, koht, tööjõud jne).

Rakenduse eesmärk

Tarkvara eesmärgiks on edukas projekti haldus meeskonnaliikmete vahel. Rakendus peaks lihtsustama erinevate ülesannete täitmist, erinevates projektides, erinevate inimeste poolt. Lisaks peaks see võimaldama planeerida erinevate ressursside kasutamist erinevate projektide vahel. Projekt jagatakse ülesanneteks, nii et iga töö oleks selle tegijale arusaadav ja hoomatav, mis vahendeid tal selle täitmiseks vaja läheb. Samuti on tähtis näha ajalugu eelnevalt sooritatud projektidest ja ülesannetest, et saadud informatsiooni põhjal oleks hetkel käesolevaid või ka tulevaid projekte parem planeerida. Kõik projekti kaasatud isikud peaksid nägema projektide hetkeseisu antud ajamomendil. Kui on tekkinud mingeid takistusi ülesannete täitmisel, et siis saaks neile operatiivselt lahendus leida ja lisaks jääks tulevikuks märk maha, mis ja miks ei õnnestunud. See saavutatakse projekti tööülesannete lisamise ja vajadusel muutmisega,tähtaegade määramisega igale meeskonnaliikmele, loetelu vajalikest vahenditest iga tehtava töö jaoks ning raportid projekti hetkeseisust projektijuhile.

Funktsionaalsus

Tarkvara saab jagada järgnevateks loogilisteks mooduliteks:

  • Projektid
  • Projektis osalejad
  • Projekti tööülesanded
  • Vahendid tööülesande täitmiseks
  • Inventari loend
  • Raportid

Must have

Vaated

  • Projektide nimekiri annab ülevaate kasutajale nii jooksvatest kui ka eesolevatest projektidest. Lisaks on seal olemas lühidalt oluline info iga projekti staatuse kohta. Kasutajal (sõltub rollist) on võimalus projekte kustutada või juurde lisada. Samuti on võimalus valida olemasolevaid projekte, et neid täiendada või muuta, selleks on vajalik avada konkreetse projekti detailvaade.
  • Projekti detailvaade annab kasutajale informatsiooni sellest, mida see konkreetne projekt endast kujutab. Samuti on sealt kättesaadav nimekiri ülesannetest, mis selle projekti on seotud.
  • Ülesannete nimekiri hõlmab endast tegevusi, mis on vajalikud vaadeldava projekti jaoks. Nimekirjast on võimalik näha ka ülesannete staatusi (ülesanne on täitmisel, lõpetatud, edasi lükatud jne). Projekti haldaval inimesel on võimalus lisada nimekirja vajalikke ülesandeid, muuta nende staatust või hoopiski see tegevus eemalda. Samuti on võimalus avada ülesannete nimekirjast konkreetse ülesande jaoks detailvaade.
  • Ülesande detailvaade annab kasutajale võimaluse saada informatsiooni konkreetse ülesande kohta. Projektihalduril on võimalik määrata ülesande seisu, lisada või redigeerida ülesande kirjeldust. Lisaks on võimalus kuvada ülesande detailvaatest selle konkreetse ülesandega seotud inimeste nimekirja.
  • Ülesandes osalejate nimekiri kuvab kõik inimesed, kes on seotud konkreetse ülesandega. Projektihalduril on võimalus määrata ülesandega seotud inimesi.
  • Kasutajate nimekiri annab ülevaate inimestest, kes on infosüsteemi lisatud ning keda on võimalik määrata mingisse rolli (nt. kas tavakasutaja või administraator). Kasutajate nimekirjast on võimalik valida konkreetne isik tema profiili vaatamiseks.
  • Kasutaja profiil näitab isiku andmeid. Lisaks on võimalik saada ülevaade projektidest, kus isik on osalenud ning mis ülesanded tal projektisiseselt on olnud.
  • Kasutajate tegevuste logi/nimekiri annab ülevaate, mida kasutajad on teinud. Nt kes on määratud mingeid ülesandeid täitma, kes on projektijuhiks määratud. Logi on kättesaadav kasutajale, kellel on vastavad õigused.
  • Veateated on nimekiri, kuhu on salvestatud infosüsteemis tekkinud tõrked ja hoiatused, mis aitavad analüüsida süsteemi toimimist. Vea põhjuse kiireks väljaselgitamiseks salvestatakse muu seas ka tõrke tekkimise asukoht.

Tegevused

  • Lisada ja muuta projekte
  • Lisada, muuta või kustutada kasutajaid
  • Lisada, kustutada projektis osalejaid
  • Lisada, muuta või kustutada projekti tööülesandeid
  • Lisada, muuta või kustutada projektis kasutatavat inventari (nt tööriistu)
  • Määrata igale tööülesandele täitja(d)
  • Lisada ülesande täitmiseks kulunud aega
  • Muuta ülesande olekut: „Tegemisel“, „Valmis“, „Alustamata“
  • Muuta graafilise kasutajaliidese keelt

Nice to have

  • Ülesandele lisada manus
  • Ühilduvus Active Directory’ga
  • Projekti raport(id)
  • Erinevad diagrammid

Laiendused

  • Veebiliides
  • Mobiililiides

UML kasutusmallid (Use Cases)

Kasutaja projekti detailvaade

text

Administraatori projektivaade

text

Kasutaja ülesande detailvaade

text

Adminstraatori ülesande detailvaade

text

Tegevuste nimekiri

text

Üksused (Entities)

Andmebaasiüksuste eskiis.


text

Kasutatavad tehnoloogiad

Programm tuleb WPF-s (Windows Presentation Foundation) ja andmeid hoitakse Microsoft SQL Server andmebaasis. Rakendus suhtleb andmebaasiga läbi Entity Frameworki. Kasutatav .NET Frameworki versioon võiks olla 4.5, kuna seal on mugav kirjutada asünkroonset funktsionaalsust.

Prototüüp

Prototüübiga saab tutvuda siit [1]. Vajab SQL andmebaasi. Testitud SQL 2008 R2 versiooniga.

Lihtsad ettevalmistused enne rakenduse käivitamist:

  1. Loo "Leffe" SQL andmebaas;
  2. Käivita selles baasis SQL skript, mille leiab failist "EfModel.edmx.sql";
  3. Muuda connectionStringis kasutajanime ja parooli failis Leffe.Management.exe.config;
  4. Käivita programm.
  5. Programm peaks looma mõned näidis sissekanded andmebaasi, kui see on tühi.

Lõpptoode

Lõpptootega saab tutvuda siit [2]. Andmebaasi skript testandmetega: [3].

Kirjeldus

Programm annab selge ülevaate ettevõttes olevate projektide ja ülesannete kohta. Näiteks on võimalik kiirelt näha ülevaadet, kes erinevate ülesannetega on hõivatud ning missugused tööriistad antud ülesannetes on kasutusel. Samuti võimaldab ülesannetesse lisada ka erinevaid tooteid või tarvikuid, mida võib ülesande täitmiseks vaja minna. Antud programm võimaldab kasutajal lihtsa vaevaga hallata erinevaid projektide ja nendega seotud ülesandeid!

Kasutusjuhend

Projects - Projektide vaates on nähtaval kõik ettevõtte projektid. Vajutades projecti reale, ilmub allapoole projekti detail vaade ning antud projektiga seotud ülesanded. Projekti parameetreid saab muuta vajutades nuppu "Modify". Projekti staatust on võimalik muuta ka detail vaates olevad staatuse välja rippmenüüst. Nupp "New company" võimaldab lisada uue kliendi või firma, kellega on antud projekt seotud. Nupp "New project" võimaldab lisada projektide nimekirja uue projekti.

Active tasks - Ülesannete vaates on nähtaval kõik projektidega seotud ülesanded. Vajutades ülesande reale, ilmub allapoole ülesande detailvaade. Ülesande parameetreid saab muuta vajutades nuppu "Modify". Ülesande staatust on võimalik muuta ka detail vaates olevad staatuse välja rippmenüüst. Nupp "New task" võimaldab lisada ülesannete nimekirja uue ülesande. Nupp "Add inventory" võimaldab lisada ülesande täitmisel vajaminevaid tooteid või tarvikuid. Nupp "Add tool" võimaldab lisada ülesande täitmisel vajaminevaid tööriistu. Nupp "Assign to" võimaldab inimesi, kes on seotud antud ülesande täitmisega.

Toolbox - Toolbox sisaldab töövahendeid, mida läheb vaja tööülesande (taski) teostamiseks. Siin saab määrata ka vajaminevate tööriistade koguse ning mis ajast neid vaja läheb ja kui kaua neid tööriistu vaja võib minna. Tööriistu saab lisada Taski alt vajutades nuppu "Add tool".

Inventory - Tarvikute vaates on näha nimekiri ostetud toodetest tarvikutest, mida võib ülesande täitmisel vaja minna. Nupp "New inventory" võimaldab lisada tarvikute nimekirja uue tarviku.

Users - Kasutajate vaates on näha nimekiri kasutajatest, keda on võimalik siduda erinevate ülesannetega. Nupp "New user" võimaldab lisada kasutajate nimekirja uue kasutaja.

Quit - Väljub programmist.

Retsensioonid

  • Meeskonna "Kahurid" analüüsi retsensioon [Link] - 11.11.2012
  • Meeskonna "R&T Soft" prototüübi retsensioon [Link] - 02.12.2012
  • Meeskonna Taksobaas lõpptoote retsensioon [Link] - 05.01.2013

Tööjaotus

  • Arvi Alamaa - Projektijuht

Skype: arvi_alamaa

  • Jarmo Poolak

Skype: jarmo.poolak

  • Rene Ott

Logi

  • 13.10.2012 - Esimene kokkusaamine, projekti idee ja kirjelduse loomine ning esmane dokumenteerimine (Arvi Alamaa, Jarmo Poolak)
  • 22.10.2012 - Analüüsidokumendi esmane versioon (Jarmo)
  • 25.10.2012 - Meeskonna ja wikilehe loomine (Arvi Alamaa)
  • 30.10.2012 - Meeskonnaga liitus kolmas liige Rene Ott
  • 01.11.2012 - Kokkusaamine, programmi analüüsi arutlemine. (Arvi, Jarmo, Rene)
  • 04.11.2012 - Analüüsi koostamine (Arvi, Jarmo, Rene)
  • 11.11.2012 - Meeskonna "Kahurid" analüüsi retsensiooni koostamine [Link]. (Rene)
  • 12.11.2012 - Meeskonnaga kokkusaamine.
  • 28.11.2012 - Prototüübi release (Arvi Alamaa, Jarmo Poolak)
  • 02.12.2012 - Prototüübi retsensiooni koostamine [Link]. (Arvi)
  • 05.12.2012 - Uus funktsionaalsus: ülesannete lisamine, projekti detailvaade, projekti muutmine (Arvi, Jarmo)
  • 10.12.2012 - Uus funktsionaalsus: tööriista- ja tarvikute lisamine ja nimekiri.
  • 16.12.2012 - Tööriistade ja tarvikute sidumine ülesandega. Pisiparandused ja -muudatused (Arvi, Jarmo)
  • 19.12.2012 - Ettekande slaidide koostamine (Arvi)
  • 05.01.2013 - Lõpptoote retsensiooni koostamine [Link]. (Jarmo)