8
definisanje korisničkih zahteva Definisanje korisničkih zahteva 17.2.2003 Proces razvoja informacionih sistema - definisanje korisničkih zahteva 2 Sadržaj Karakteristike zahteva Proces definisanja zahteva Modeliranje radnog procesa korisnika Tehnike definisanja zahteva Zahtevi vezani za korisnički interfejs Alati za definisanje zahteva 17.2.2003 Proces razvoja informacionih sistema - definisanje korisničkih zahteva 3 Karakteristike zahteva • Zahtevi zahtevi su opisi problema, a ne sistema koji treba da rešava problem formalna specifikacija zahteva - povezuje problem sa sistemom 17.2.2003 Proces razvoja informacionih sistema - definisanje korisničkih zahteva 4 • Zahtevi opisuju šta sistem treba da radi, a ne kako on to treba da radi najčće su nekompletni evoluiraju tokom vremena, kroz niz iteracija Karakteristike zahteva 17.2.2003 Proces razvoja informacionih sistema - definisanje korisničkih zahteva 5 • Zahtevi zahtevi i dizajn sistema su međusobno zavisni funkcionalni (ponašanje sistema) i nefunkcionalni zahtevi (npr. kvalitet sistema) zahtevi zavise od konteksta u kome sistem treba da radi Karakteristike zahteva 17.2.2003 Proces razvoja informacionih sistema - definisanje korisničkih zahteva 6 Proces definisanja zahteva Definisanje zahteva je proces učće korisnika kreiranje adekvatne dokumentacije provera kompletnosti i konzistentnosti zahteva prototipski razvoj sistema

Definiranje projektnog zahtjeva

  • Upload
    dubi001

  • View
    67

  • Download
    1

Embed Size (px)

Citation preview

Page 1: Definiranje projektnog zahtjeva

Proces razvoja informacionih sistema -definisanje korisničkih zahteva

2/17/2003

1

Definisanje korisničkih zahteva

17.2.2003 Proces razvoja informacionih sistema -definisanje korisničkih zahteva

2

Sadržaj

• Karakteristike zahteva• Proces definisanja zahteva• Modeliranje radnog procesa korisnika• Tehnike definisanja zahteva• Zahtevi vezani za korisnički interfejs• Alati za definisanje zahteva

17.2.2003 Proces razvoja informacionih sistema -definisanje korisničkih zahteva

3

Karakteristike zahteva

• Zahtevizahtevi su opisi problema, a ne sistema koji treba da rešava problemformalna specifikacija zahteva -povezuje problem sa sistemom

17.2.2003 Proces razvoja informacionih sistema -definisanje korisničkih zahteva

4

• Zahteviopisuju šta sistem treba da radi, a ne kako on to treba da radinajčešće su nekompletnievoluiraju tokom vremena, kroz niz iteracija

Karakteristike zahteva

17.2.2003 Proces razvoja informacionih sistema -definisanje korisničkih zahteva

5

• Zahtevizahtevi i dizajn sistema su međusobno zavisnifunkcionalni (ponašanje sistema) i nefunkcionalni zahtevi (npr. kvalitet sistema)zahtevi zavise od konteksta u kome sistem treba da radi

Karakteristike zahteva

17.2.2003 Proces razvoja informacionih sistema -definisanje korisničkih zahteva

6

Proces definisanja zahteva

• Definisanje zahteva je procesučešće korisnikakreiranje adekvatne dokumentacijeprovera kompletnosti i konzistentnosti zahtevaprototipski razvoj sistema

Page 2: Definiranje projektnog zahtjeva

Proces razvoja informacionih sistema -definisanje korisničkih zahteva

2/17/2003

2

17.2.2003 Proces razvoja informacionih sistema -definisanje korisničkih zahteva

7

• Definisanje zahteva je processimulacija i simulacioni paketiposebni jezici za definisanje zahtevamodeliranje problemazahtevi u skladu sa potrebama tržišta

Proces definisanja zahteva

17.2.2003 Proces razvoja informacionih sistema -definisanje korisničkih zahteva

8

Modeliranje radnog procesa

One zahteve koji će neposredno uticati na to da budući softverski proizvod verno odslikava proces rada korisnikatreba učiniti eksplicitnim !!!

17.2.2003 Proces razvoja informacionih sistema -definisanje korisničkih zahteva

9

• Poznati pristupi u modeliranju radnog procesa korisnika

višestruki dijagramimetafore

Modeliranje radnog procesa

17.2.2003 Proces razvoja informacionih sistema -definisanje korisničkih zahteva

10

• Višestruki dijagrami

Koristite dijagrame da biste shvatili radni proces svog korisnika. Vizuelni pregled je razumljiviji i za razvojni tim i za korisnika !!!

Modeliranje radnog procesa

17.2.2003 Proces razvoja informacionih sistema -definisanje korisničkih zahteva

11

• Višestruki dijagramikontekstni dijagramifizički dijagramikomunikacioni dijagramivremenski dijagrami

Modeliranje radnog procesa

17.2.2003 Proces razvoja informacionih sistema -definisanje korisničkih zahteva

12

• Višestruki dijagramiu više iteracija zajedno sa korisnicimadefinisanje terminologije procesa radaapstraktni model radnog procesa, kao osnova za dizajn sistema

Modeliranje radnog procesa

Page 3: Definiranje projektnog zahtjeva

Proces razvoja informacionih sistema -definisanje korisničkih zahteva

2/17/2003

3

17.2.2003 Proces razvoja informacionih sistema -definisanje korisničkih zahteva

13

• Višestruki dijagrami - kontekstni dijagram

Sekretarica

Dokumenti

Direktor

Posao sapapirima

Priprema

Deoobaveza

Overa

Podsećanje

Modeliranje radnog procesa

17.2.2003 Proces razvoja informacionih sistema -definisanje korisničkih zahteva

14

• Višestruki dijagrami - vremenski dijagramOdluka o pripremi dokumenata

Dobijanje materijala

Izbor prioritetnih dokumenata

Izbor jednog dokumenta

Odluka o akciji

Priprema Traženjeobjašnjenja

Arhiviranje

Odlaganje

Modeliranje radnog procesa

17.2.2003 Proces razvoja informacionih sistema -definisanje korisničkih zahteva

15

• Metaforemetafora kancelarijemetafora agencijemetafora bibliotekemetafora radio/TV stanice

Modeliranje radnog procesa

17.2.2003 Proces razvoja informacionih sistema -definisanje korisničkih zahteva

16

• Metafore

Najvažnije je dobro razumeti korisničke zahteve, kako bi se odabrala prava metafora od već postojećih, ili u interakciji sa korisnikom definisala nova.

Modeliranje radnog procesa

17.2.2003 Proces razvoja informacionih sistema -definisanje korisničkih zahteva

17

• Metafore - način izborana bazi nekih drugih metafora koje korisnici već koristefizička struktura po mogućstvu (npr. metafora kancelarije)jasno razumljivo bukvalno značenje (npr., metafora biblioteke)

Modeliranje radnog procesa

17.2.2003 Proces razvoja informacionih sistema -definisanje korisničkih zahteva

18

• Metaforestimulišu ideje korisnikapomažu da se korisnici i razvojni tim bolje razumejupomažu da korisnici razumeju dizajn sistema

Modeliranje radnog procesa

Page 4: Definiranje projektnog zahtjeva

Proces razvoja informacionih sistema -definisanje korisničkih zahteva

2/17/2003

4

17.2.2003 Proces razvoja informacionih sistema -definisanje korisničkih zahteva

19

• Zajednički imenitelj svih tehnikaevolutivna, inkrementalna i iterativna priroda procesaobavezno uključivanje korisnika

Tehnike definisanja zahteva

17.2.2003 Proces razvoja informacionih sistema -definisanje korisničkih zahteva

20

• Najpoznatije tehnikeintervjuanaliza scenarijakonceptualno modeliranjeAEE tehnika (Achieving Engineering Excellence)pravljenje i korišćenje video zapisa

Tehnike definisanja zahteva

17.2.2003 Proces razvoja informacionih sistema -definisanje korisničkih zahteva

21

• Intervjuformalni i neformalni pristupfleksibilna i slobodna tehnika

Tehnike definisanja zahteva

17.2.2003 Proces razvoja informacionih sistema -definisanje korisničkih zahteva

22

• Intervju

Nemojte nikada verovati da ste saznali sve o radnom procesu korisnika ili o njegovim potrebama !!!

Tehnike definisanja zahteva

17.2.2003 Proces razvoja informacionih sistema -definisanje korisničkih zahteva

23

• Intervju

Tumačite korisnikove zahteve zajedno sa njim.

Tehnike definisanja zahteva

17.2.2003 Proces razvoja informacionih sistema -definisanje korisničkih zahteva

24

• Intervju

Pravilno koristite svoje korisnike. Dozvolite da ih njihov "domaći teren"učini sigurnijim.

Tehnike definisanja zahteva

Page 5: Definiranje projektnog zahtjeva

Proces razvoja informacionih sistema -definisanje korisničkih zahteva

2/17/2003

5

17.2.2003 Proces razvoja informacionih sistema -definisanje korisničkih zahteva

25

• Intervju

Prekinite korisnika u njegovom poslui pitajte ga: "Šta to upravo radite? Čemu to služi? Da li ste upravo to očekivali?"

Tehnike definisanja zahteva

17.2.2003 Proces razvoja informacionih sistema -definisanje korisničkih zahteva

26

• Intervju

Neka predstavnik korisnika bude prisutankad glavni projektanti donose važne odluke.

Tehnike definisanja zahteva

17.2.2003 Proces razvoja informacionih sistema -definisanje korisničkih zahteva

27

• Intervju

Veoma pogodan medijum za izradu dokumenta o zahtevima je hipertekst.

Tehnike definisanja zahteva

17.2.2003 Proces razvoja informacionih sistema -definisanje korisničkih zahteva

28

• Analiza scenarijascenario -opis neke tipične sekvence aktivnostiscenariji opisuju potencijalno ponašanje sistema gledano iz ugla korisnikascenariji zahtevaju stalno uključivanje korisnika

Tehnike definisanja zahteva

17.2.2003 Proces razvoja informacionih sistema -definisanje korisničkih zahteva

29

• Analiza scenarijascenariji daju smernice za sintezu prototipa sistemascenariji pomažu u usaglašavanju specifikacije zahteva sa korisnicimascenariji sugerišu kriterijume za testiranje softvera

Tehnike definisanja zahteva

17.2.2003 Proces razvoja informacionih sistema -definisanje korisničkih zahteva

30

• Analiza scenarijakoraci

• kreiranje skupa mogućih scenarija za opis jedne radne situacije

• konstruisanje grafa (stabla) scenarija koji opisuju datu situaciju

Tehnike definisanja zahteva

Page 6: Definiranje projektnog zahtjeva

Proces razvoja informacionih sistema -definisanje korisničkih zahteva

2/17/2003

6

17.2.2003 Proces razvoja informacionih sistema -definisanje korisničkih zahteva

31

• Analiza scenarijakoraci

• kreiranje nekog formalnog modela scenarija

• generisanje prototipske funkcije sistema (i pružanje na uvid korisniku u cilju validacije)

može i više iteracija

Tehnike definisanja zahteva

17.2.2003 Proces razvoja informacionih sistema -definisanje korisničkih zahteva

32

• Konceptualno modeliranjerazdvojiti direktne zahteve od formalnih specifikacijaizraziti zahteve kao formalne specifikacije

• one moraju da potiču od neformalnih zahteva, a ne od karakteristika budućeg softverskog sistema

• one se mogu obrađivati i interpretirati korišćenjem odgovarajućih softverskih alata, a direktne ne

Tehnike definisanja zahteva

17.2.2003 Proces razvoja informacionih sistema -definisanje korisničkih zahteva

33

• Konceptualno modeliranjedefinisati zahteve tako da budu realno ostvarljivieliminisati redundantnosti korišćenjem nekog formalizma

• primer -zahtevi: A ∧ B, A ∧ C (A je redundantno)

Tehnike definisanja zahteva

17.2.2003 Proces razvoja informacionih sistema -definisanje korisničkih zahteva

34

• AEE tehnika (Achieving Engineering Excellence)

razumevanje potreba korisnikaprikupljanje informacija o radnom procesuprečišćavanje prikupljenih informacijaformalizacija sakupljenih informacija

Tehnike definisanja zahteva

17.2.2003 Proces razvoja informacionih sistema -definisanje korisničkih zahteva

35

• AEE tehnika (Achieving Engineering Excellence)

generisanje predloga više mogućih rešenja budućeg sistema (!!!)klasifikovanje zahteva po podsistemima("stablo zahteva")fiksiranje zahteva (!!!)

Tehnike definisanja zahteva

17.2.2003 Proces razvoja informacionih sistema -definisanje korisničkih zahteva

36

• AEE tehnika (Achieving Engineering Excellence)

analiza posledica potencijalnih promena (!!!)ažuriranje specifikacije zahteva

Tehnike definisanja zahteva

Page 7: Definiranje projektnog zahtjeva

Proces razvoja informacionih sistema -definisanje korisničkih zahteva

2/17/2003

7

17.2.2003 Proces razvoja informacionih sistema -definisanje korisničkih zahteva

37

• Pravljenje i korišćenje video zapisasmanjivanje režijskih troškova komunikacije sa korisnicimavideo zapisi se mogu pokazati i ostalim članovima tima (i to više puta!)video zapisi otkrivaju nove detalje iz procesa rada

Tehnike definisanja zahteva

17.2.2003 Proces razvoja informacionih sistema -definisanje korisničkih zahteva

38

• Osnovne preporukepaziti da korisnički interfejs mora uvek da bude

• modeliran u skladu sa kognitivnim sposobnostima i (ne)svesnim očekivanjima krajnjeg korisnika

• usklađen sa korisnikovim prirodnim procesom razmišljanja pri obavljanju posla

ne preterivati sa grafikom

Zahtevi vezani za korisnički interfejs

17.2.2003 Proces razvoja informacionih sistema -definisanje korisničkih zahteva

39

• Osnovne preporukekorišćenje metafora

• proces rada mora da bude "vidljiv" na ekranu

• metafora mora da deluje prirodno na ekranu

Zahtevi vezani za korisnički interfejs

17.2.2003 Proces razvoja informacionih sistema -definisanje korisničkih zahteva

40

• Osnovne preporuke

Specifični zahtevi vezani za korisnički interfejs moraju da budu definisani tek nakon definisanja zahteva vezanih za sistem kao celinu.

Zahtevi vezani za korisnički interfejs

17.2.2003 Proces razvoja informacionih sistema -definisanje korisničkih zahteva

41

• Važno upozorenje

Alati za definisanje zahteva

Automatizacija procesa definisanja zahteva nije jednostavan posao. Alati za definisanje zahteva obično zahtevaju poznavanje formalizama na kojima se zasnivaju i odgovarajuću obuku.

17.2.2003 Proces razvoja informacionih sistema -definisanje korisničkih zahteva

42

• Alati omogućuju:memorisanje formalizovanih zahteva u bazilako strukturiranje i pretraživanje bazeidentifikaciju i vizualizaciju zahtevaproveru konzistentnosti i kompletnosti zahtevapraćenje istorijata pojedinačnih zahteva i grupa zahteva

Alati za definisanje zahteva

Page 8: Definiranje projektnog zahtjeva

Proces razvoja informacionih sistema -definisanje korisničkih zahteva

2/17/2003

8

17.2.2003 Proces razvoja informacionih sistema -definisanje korisničkih zahteva

43

• Princip rada alata za definisanje zahteva

Korisnik Softverskiinženjer Dokument o

zahtevima

BazazahtevaProgram za

definisanjezahteva

Računar

Komande

Interaktivniizlaz

Alati za definisanje zahteva

17.2.2003 Proces razvoja informacionih sistema -definisanje korisničkih zahteva

44

Umesto zaključka

Iterate with your customers. Iterate, iterate, iterate.

Karen Holtzblatt, InContext Enterprises, Inc.

17.2.2003 Proces razvoja informacionih sistema -definisanje korisničkih zahteva

45

• L.J. Bannon, "The Politics of Design - Representing Work", Communications of The ACM, Vol.38, No.9, September 1995, pp. 66-68.

• H.R. Beyer, K. Holtzblatt, "Apprenticing with the Customer", Communications of The ACM, Vol.38, No.5, May 1995, pp. 45-52.

• B. Boehm, H. In, "Identifying Quality-Requirement Conflicts", IEEE Software, March 1996, pp. 25-36.

• A.M. Davis, P. Hsia, "Giving Voice to Requirements Engineering", IEEE Software, March 1994, pp. 12-17.

• K. Holtzblatt, H. Beyer, "Making Customer-Centered Design Work for Teams", Communications of The ACM, Vol.36, No.10, October 1993, pp. 92-104.

• P. Hsia, J. Samuel, J. Gao, D. Kung, Y. Toyoshima, C. Chen, C.: "Formal Approach to Scenario Analysis", IEEE Software, March 1994, pp. 33-41.

• A.F. Hutchings, S.T. Knox, "Creating Products Customers Demand",Communications of The ACM, Vol.38, No.5, May 1995, pp. 72-80.

Literatura

17.2.2003 Proces razvoja informacionih sistema -definisanje korisničkih zahteva

46

• I. Jacobson, G. Booch, J. Rumbaugh, "The Unified Software Development Process", Addison-Wesley, Reading, MA, 1999.

• M. Keil, E. Carmel, E.: "Customer-Developer Links in Software Development", Communications of The ACM, Vol.38, No.5, May 1995, pp. 33-44.

• M. Kyng, "Making Representations Work", Communications of The ACM, Vol.38, No.9, September 1995, pp. 46-55.

• K.H. Madsen, "A Guide to Metaphorical Design", Communications of The ACM, Vol.37, No.12, December 1994, pp. 57-62.

• H. Nissen, M. Jeusfeld, M. Jarke, G. Zemanek, H. Huber, "Managing Multiple Requirements Perspectives with Metamodels", IEEE Software, March 1996, pp. 37-51.

• F. Pinheiro, J. Goguen, "An Object-Oriented Tool for Tracing Requirements", IEEE Software, March 1996, pp. 52-65.

• C. Potts, K. Takahashi, A.I. Anton, "Inquiry-Based Requirements Analysis", IEEE Software, March 1994, pp. 21-32.

Literatura

17.2.2003 Proces razvoja informacionih sistema -definisanje korisničkih zahteva

47

• C. Rich, R.C. Waters, "Knowledge Intensive Software Engineering Tools", IEEE Transactions on Knowledge and Data Engineering, Vol.4, No.5, October 1992, pp. 424-430.

• J. Siddiqi, "Challenging Universal Truths of Requirements Engineering", IEEE Software, March 1994, pp. 18-20.

• J. Siddiqi, M.C. Shekaran, "Requirements Engineering: The Emerging Wisdom", IEEE Software, March 1996, pp. 15-19.

• L. Suchman, "Making Work Visible", Communications of The ACM, Vol.38, No.9, September 1995, pp. 56-61.

Literatura