FRI:UNI:Vodenje projektov:Analiza zahtev
Iz E-študij, proste zakladnice študentskega znanja
Vsebina |
Analiza zahtev
- prvi korak k uspešni izpeljavi projekta
- potrebno je definirati zahteve bodočega uporabnika
- specifikacija zahtev - dokument, ki je rezultat analize, osnova za nadaljne delo
- med izvajanjem projekta lako pride do sprememb specifikacije
- analizo zahtev in načrtovanje včasih težko ločimo
- Koraki analize:
- Seznanjanje s problemom
- Ocenjevanje strukture in povezave informacijskega pretoka, ugotavljanje glavnih omejitev
- Izdelava specifikacije
- Recenzija rezultatov skupaj z naročnikom
- ponavljanje 2-4 dokler naročnik ni zadovoljen
- zahteve je pametno razvrstiti po pomembnosti
- določiti je treba strojno opremo in OS, na katerem bo SW tekel
- z analizo neposrednega okolja določiti kako bo sistem integriran v okolje (zelo pomembno: če to ni vredu, lahko zelo dober projekt propade)
- pri večjih projektih je koristno narediti študijo izvedljivosti in ekonomsko študijo
Specifikacija zahtev
- v njej so zbrani rezultati analize
- nedvoumna, saj je izhodišče za delo razvijalcev
- razumljiva, saj jo morajo razumeti naročniki
- IEEE priporoča, da je:
- Enoumna
- Popolna
- Preverljiva
- Konsistentna
- Spremenljiva
- Sledljiva
- Uporabna
Ljudje kot viri informacij
- iz nejasnih in nasprotujočih si izraženih potreb je potrebno izluščiti jasne in eksplicitne zahteve
- ločevanje pomembnih in nepomembnih informacij
- sprememba implicitnega modela uporabnika v eksplicitnega
Problemi analize
- ker implicitni modeli niso ubesedeni
- naročniki in razvijalci ne govorijo istega "jezika"
- če je pobuda za avtomatizacijo nekega procesa izraz nezadovoljstva nad trenutnimk stanjem, to ni primerna rešitev
- naročniki morajo ugotoviti kakšne so dejanske zahteve in kako se bodo razvijale
- 4 strategije za zbiranje informacij:
- Spraševanje
- Izpeljava iz obstoječega sistema
- Sinteza iz lastnosti okolice
- Izdelava prototipov
Pogajalski problemi
- vse strategije so tehnicistične - to se obnese ko gre za tehnične probleme
- ko so vmešani interesi ljudi s take metode navadno ne obnesejo
- pridobivanje znanja iz fizičnega in socialnega sveta: "paradigma"
- štiri ekstremne paradigme:
- Funkcionalizem: razvijalec sistema išče merljive vzorčne povezave
- Socialni relativizem: analitik omogoča spremembe in spodbuja udeležbo vseh vpletenih
- Radikalni strukturalizem: razvijalci sistema posredujejo v konfliktu med socialnimi razredi
- Neohumanizem: glavna skrb je mancipacija vseh sodelujočih
Orodja za dokumentiranje zahtev
Metode za namane analize in načrtovanja:
Analiza na osnovi podatkovnega toka
- Sistem ponazorimo s transformacijo, ki sprejme vhodne podatke in da ven izhodne podatke
- Diagram podatkovnega toka - ponazarja pretok podatkov in njihovo transformacijo
- lahko prikazuje različne ravni abstrakcije
- običajno se analiza izvaja tko, da se podrobnosti postopoma prikazujejo:
- Stopnja 01: celoten sistem le z enim mehurčkom
- Stopnja 02: sistem prikazan s štirimi transformacijami
- Stopnja 03: podrobneje razdelana transformacija "osrednji nadzor"
Metoda SADT
- obsega grafično notacijo in metodologijo analize
- z njo analitik razvije hierarhičen model, ki vsebuje veliko diagramov
- vsako celico lahko razdelimo na več celic
Analiza na osnovi strukture podatkov
- če želimo dati poudarek strukturi podatkov
- koraki strukturne analize:
- Identifikacija glavnih informacijskih objektov
- Hierarhična predstavitev podatkov
- Predstavitev strukture informacij z regularnimi izrazi
- hierarhično podatk. struk. preslikati v programsko
- Warnierovi diagrami
- metoda DSSD
- metoda JSP, JSD
Ostale metode analize
- SERM
- PSL/PSA
- TAGS
- SSADM
Verifikacija in validacija
- na koncu moramo vedno oceniti uspešnost in pravilnost faze
- pri analizi preverimo: natančnost, pravilnost, popolnost, konsistentnost, berljivost in zmožnost testiranja
- preveriti moramo vse vmesnike
- primeren trenutek za snovanje načrta testiranja