oisv_07a_srs_1_2012

Upload: dina-t

Post on 06-Jul-2018

213 views

Category:

Documents


0 download

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