oisv_07a_srs_1_2012
TRANSCRIPT
-
8/18/2019 OISv_07a_SRS_1_2012
1/23
Specifikacijasistemskih zahtjevaKenan Halilović
-
8/18/2019 OISv_07a_SRS_1_2012
2/23
-
8/18/2019 OISv_07a_SRS_1_2012
3/23
Analiza zahtjeva i sistemskaspecifikacija
• Zašto je to jedna od prvih faza SDLC-a?• Potreba da razumijemo šta klijent želi!• Cilj je razumjeti klijentove probleme• Često ni klijent ne zna svoje zahtjeve!
• Analiza zahtjeva traži: “Napraviti listu uputstava kojućemo koristiti da saznamo kada je posao gotov ikada je klijent zadovoljan ”. Prvi rezultat – Definicijazahtjeva
•
Specifikacija zahtjeva: “Opis šta će sistem raditi (nekako ) kako bi se ispunili zahtjevi. ”• Razlika između prikupljanja podataka i analize sistema?• Istraživanje visokog nivo s ciljem otkrivanja problema i
mogućnosti da nešto bude urađeno, za koje vrijeme.
-
8/18/2019 OISv_07a_SRS_1_2012
4/23
Etnografska analiza• Društvene nauke se dugo vremena bave
posmatranjam i analizom kako ljudi rade svojposao
•
Ljudi ne moraju objasniti ili objasniti svoj posao• Mogu se primjetiti socijalni i organizacijski
faktori• Etnografske studije pokazuju da je posao mnogo
bogatiji i kompleksniji od jednostavnihsistemskih modela
-
8/18/2019 OISv_07a_SRS_1_2012
5/23
Socijalni i organizacioni faktori• Informacioni sistemi se koriste u društvenom i
organizacionom kontekstu. Ovo može uticati ilidominirati sistemskim zahtjevima
• Socijalni i organizacioni faktori nisu jedna točkagledišta, nego uticaji na sve tačke gledišta
• Dobra analiza mora uzeti u obzir ove faktore, aline postoji sistematsko rješenje kako bi se ovouradilo
-
8/18/2019 OISv_07a_SRS_1_2012
6/23
-
8/18/2019 OISv_07a_SRS_1_2012
7/23
Definicija i specifikacija
1. The softw are m ust pr ovide a means of representing and1. accessing e xternal files crea ted b y other tools .
1.1 The user should be pr ovided with fac ilities to define the ty pe of 1.2 external files .1.2 Each e xternal file type ma y have an associa ted tool w hich ma y be1.2 applied to the file .1.3 Each e xternal file type ma y be repr esented as a specific icon on1.2 the user’ s displa y.
1.4 Facilities should be pr o vided for the icon r epresenting an1.2 external file ty pe to be defined b y the user .1.5 When a user selects an icon r epresenting an e xternal file, the1.2 ef fec t of that selection is to apply the tool associated with the ty pe of 1.2 the external file to the file represented by the selected icon.
User requir ement definition
System requir ements specification
-
8/18/2019 OISv_07a_SRS_1_2012
8/23
Funkcionalni i ne-funkcionalni• Funkcionalni zahtjevi opisuju ponašanje sistema
• Priority: rankirani zahtjevi po važnosti • Criticality : bitnost svakog zahtjeva za ukupno funkcionisanje• Risks : šta može dovesti do neispunjenja zahtjeva? Kako
minimizirati mogućnost? • Ne-funkcionalni zahtjevi opisuju druge osobine sistema
kao što su: • Trošak (kako ga mjeriti?)• Performanse (efikasnost, response time? startup time?)•
Portabilnost (ciljne platforme?)• Dostupnost (koliki down-time je prihvatljiv?)• Security (neovlašteni pristupi ?)• Safety (uticaj na ljude i okolinu?)• Maintainability (proširivost, ponovno korištenje )
-
8/18/2019 OISv_07a_SRS_1_2012
9/23
FURPS+ modelFURPS je lista zahtjeva:• Functional (features, capabilities, security)• Usability (human factors, help, documentation)• Reliability (frequency of failure, recoverability,
predictability)• Performance (response time, throughput, accuracy,
availability, resource usage)• Supportability (adaptability, maintainability,
internationalization, configurability)
-
8/18/2019 OISv_07a_SRS_1_2012
10/23
A šta je „ +” u FURPS+?
Ne zaboravimo:• Implementation (resource limitation, language
and tools, hardware)•
Interface (constraints posed by interfacing withexternal systems)• Operations (system management in its
operational setting)• Packaging (for example, a physical box)• Legal (licensing)
-
8/18/2019 OISv_07a_SRS_1_2012
11/23
MjereProperty MeasureSpeed Processed transactions/second
User/Event response timeScreen refresh time
Size K Bytes
Number of RAM chipsEase of use Training time Number of help frames
Reliability Mean time to failureProbability of unavailabilityRate of failure occurrenceAvailability
Robustness Time to restart after failurePercentage of events causing failureProbability of data corruption on failure
Po rtab ility Percentag e of target dependen t statemen ts Number of target systems
-
8/18/2019 OISv_07a_SRS_1_2012
12/23
Odnosi među zahtjevima • Konflikti među različitim nefunkcionalnim zahtjevima su česti
u kompleksnim sistemima• Primjer: Sistem na satelitu
• Kako bi se minimizirala težina, broj zasebnih čipova u sistemutreba minimizirati
• Kako bi se minimizirala potrošnja energije, čipovi sa manjompotrošnjom se trebaju koristiti
• Čipovi sa manjom potrošnjom imaju manju procesnu snagu, štoznači da će se morati koristiti više čipova
• Koji je najbitniji zahtjev?
-
8/18/2019 OISv_07a_SRS_1_2012
13/23
Definicija zahtjeva• Objašnjava spoljašnje ponašanje sistema –
zahtjevi se ne trebaju definisati modelima ilikoristiti dijagrame visikog nivoa
• Uključuje funkcionalne i nefunkcionalnezahtjeve
• Funkcionalni zahtjevi su servisi/opcije koje sistemtreba pružati
• Nefunkcionalni zahtjevi su ograničenja koja supostavljena na servise/opcije koje sistem nudi
-
8/18/2019 OISv_07a_SRS_1_2012
14/23
Pisanje definicije zahtjeva• Prirodni govor, upotpunjen dijagramima i
tabelama• Generalno prihvatljivo i razumljivo, sa
određenim problemima:
• Nejasnoće. Teško je postići preciznost bez činjenjadokumenta teškim za čitanje
• Zbrkanost zahtjeva. Funkcionalni i nefunkcionalnizahtjevi se često izmješaju
• Objedinjavanje zahtjeva. Nekoliko različitih zahtjevase greškom objedinjava
-
8/18/2019 OISv_07a_SRS_1_2012
15/23
Primjer: zahtjev
2.6 Koordinatni sistem Kako bi se olakšao raspored jedinica nadijagramu, korisnik može koristiti koordinatni sistem u centimetrima iliinčima, preko opcije u kontrolnom panelu. Inicijalno, koordinatni sistem
je isključen, a može se uključiti/isključiti u svako vrijeme, kao i izvršitipromjena jedinica. Koordinatni sistem je dostupan samo u reduce-to-fitpregledu dokumenta.
-
8/18/2019 OISv_07a_SRS_1_2012
16/23
Definisanje zahtjeva• U primjeru su pomješani funkcionalni i nefunkcionalni
zahtjevi• Vaoma lako kritikovati ovakve dokumente, a veoma teško ih
napraviti kvalitetno•
Korištenje formi sa predefinisanim poljima olakšava posao iosigurava da se određene stvari ne izostave
-
8/18/2019 OISv_07a_SRS_1_2012
17/23
Primjer: zahtjev2.6 Koordinatni sistem
2.6.1 Prozor će omogućavati korištenje koordiantnog sistema u oblikurešetke horizontalnih i vertikalnih linija koje će se ovrtati u pozadini . Rešetka
će biti pasivna, a na korisnikuje da rasporedi jedinice. Obrazloženje :koordinatni sistem omogućava kreiranje urednih
dijagrama. Iako aktivna mreže omogućava vezivanje elemenata za rešetku,pozicioniranje nije precizno. Korisnik najbolje zna gdje koji element treba dase nalazi.
2.6.2 Kada se koristi u ‘reduce-to- fit’ modu (vidi 2.1), broj jedinica koji dijelerešetku se mora povećati. Obrazloženje : Ako se ne poveća broj jedinica, pozadina će biti skrivena
velikim brojem linija rešetke.
Specifikacija iz : ECLIPSE/WS/Tools/DE/FS Section 5.6
-
8/18/2019 OISv_07a_SRS_1_2012
18/23
Obrazloženje zahtjeva • Bitno je pružiti obrazloženje zahtjeva • Pomaže programerima da shvate primjenu i
razloge zahtjeva• Posebno važno kada se zahtjevi mijenjaju.
Obrazloženje smanjuje mogućnost da ćeizmjena imati neželjene posljedice
-
8/18/2019 OISv_07a_SRS_1_2012
19/23
Specifikacija zahtjeva• Specifikacija dodaje detalje na definiciju
zahtjeva. Mora biti U POTPUNOTI u skladu sadefinicijom zahtjeva.
• Obićno se predstavlja modelima i dijagramimakoji su razvijeni za vrijeme analize zahtjeva
• Često se koristi i prirodni jezik, ali to možedovesti do problema
-
8/18/2019 OISv_07a_SRS_1_2012
20/23
Problemi prirodnog jezika• Prirodni jezik se oslanja na to da oni koji čitaju specifikaciju i
oni koji je pišu koriste istu terminologiju za iste koncepte • Prirodni jezik je previše fleksibilan i podložan različitim
interpretacijama•
Često zahtjevi nisu izdjeljeni jezičkim strukturama
-
8/18/2019 OISv_07a_SRS_1_2012
21/23
Alternative prirodnom jeziku• Strukturirani prirodni jezik• Jezici za opis dizajna (UML)• Grafičke oznake • Matematika
-
8/18/2019 OISv_07a_SRS_1_2012
22/23
SRS sadržaj
1. Introduction1. Purpose2. Scope3. Definitions4. References5. Overview
2. General Description1. Product Perspective2. Product Functions3. User Characteristics4. General Constraints5. Assumptions and Dependencies
3. Specific Requirements
IEEE 830-1984
-
8/18/2019 OISv_07a_SRS_1_2012
23/23
3. Specific Requirements3.1 Functional Requirements
3.1.1 Func Req 13.1.1.1 Introduction3.1.1.2 Inputs3.1.1.3 Processing3.1.1.4 Outputs
3.1.2 Func Req 2…
3.2 External Interface Requirements
3.2.1 User Interface3.2.2 Hardware Interfaces3.2.3 Software Interfaces3.2.4 Communication Interfaces
3.3 Performance Requirements3.4 Design Constraints
3.4.1 Standards Compliance3.4.2 Hardware Limitations3.5 Attributes
3.5.1 Security3.5.2 Maintainability
3.6 Other Requirements
3.6.1 Database IEEE 830-1984