Ip 1-40

Agilné metódy vývoja softvéru
Využívajú len priame zapracovanie požiadaviek koncových používateľov do implementovanej služby systému.
Využivajú inkrementálne spracovanie, dokumentovanie a implementáciu požiadaviek.
Sa zameriavajú na kompletné zostavenie dokumentu požiadaviek pred začiatkom implementácie.
Nezaoberajú spracovaním požiadaviek.
Požiadavky môžeme deliť na:
Systémové požiadavky - napísané ako štruktúrovaný dokument.
Zákaznícke požiadavky - napísané ako štruktúrovaný dokument pre zákazníkov používateľa.
Používateľské požiadavky - napísané v prirodzenom jazyku pre používateľa.
Používateľské požiadavky - napísané prirodzeným jazykom vo forme UML diagramov.
Požiadavky možno deliť na:
Nefunkčné - definujú obmedzenia funkcionality systému.
Dočasné - predstavujú funkčné požiadavky prejavujúce sa iba v určitej presne špecifikovanej fáze tvorby systému.
Trvalé - predstavujú funkčné požiadavky prejavujúce sa počas celého životného cyklu systému.
Funkčné - definujú služby, ktoré má systém poskytovať.
Pre nefunkčné požiadavky platí:
Často sa ich kompletnosť dá overiť analýzou konzistencie funkčných požiadaviek.
Verifikovateľná nefunkčná požiadavka používa nejaké objektivne merateľné kritérium.
Môže byť veľmi ťažké precízne definovať nefunkčné požiadavky.
Splnenie nefunkčných požiadaviek sa zvyčajne veľmi ľahko overuje.
Pre nefunkčné požiadavky platí
Nefunkčné požiadavky zasahujú skôr architektúru celého systému ako jeho jednotlivé komponenty.
Nefunkčné požiadavky definujú nepožadovanú funkcionalitu.
Jedna nefunkčná požiadavka môže vygenerovať viacero funkčných požiadaviek.
Nefunkčné požiadavky nemôžu vzniknúť ako dôsledok platnej legislatívy.
Požiadavky môžu slúžiť na nasledujúce dva účely:
Vypracovanie dokumentácie vlastností systému pre fázu tzv. Korektivneho testovania.
Na prípravu dokumentácie vlastností navrhnutého systému počas jeho nasadenia do prevádzky.
Podanie ponuky na zmluvu týkajúcu sa vytvorenia systému.
Vypracovanie zmluvy týkajúcej sa vytvorenia systému.
Nefunkčné požiadavky môžu byť kritickejšie ako funkčné. Ak nie sú splnené, môže byť systém nepoužiteľný.
Pravda
Nerpavda
Vzhľadom ku komplexnosti navrhovaného systému a jeho prostredia je v praxi nemožné vypracovať kompletný a konzistentný zoznam požiadaviek.
Pravda
Nepravda
Overovanie kompletnosti a konzistencie požiadaviek:
Nie je dôležité, pretože u rozsiahlých a zložitých systémov je nemožné zostaviť kompletný a konzistentný dokument požiadaviek
Je najdôležitejšie pred odovzdaním cieľového riešenia
Je najdôležitejšie v predprojektových fázach pri príprave kontraktu na riešenie projektu
Je dôležitý postup v projektových fázach, ktorý umožňuje minimalizovať riziká cieľového systému
Požiadavky by mali byť
Recipientné - každá požiadavka musí mať svojho stakeholdera, ktorému je určená.
Konzistentné - jednotlivé požiadavky by nemali byť vo vzájomnom konflikte.
Flagrantné - aby umožňovali flexibilnú interpretáciu stakeholdermi a dodávateľom systému.
Kompletné - mali by zahŕňať popis všetkých potrebných vlastností systému.
Pod názvom stakeholder môže vystupovať:
Vlastník systému
Oncový používateľ
Stakeholder označený ako externý
Systémový manažér
Vzhľadom ku komplexnosti navrhovaného systému a jeho prostredia je v praxi nemožné vypracovať kompletný a konzistentný zoznam požiadaviek.
True
False
Konzistentnosť požiadaviek znamená, že:
Nie sú navzájom v rozpore
Pokrývajú všetky všetky dôležité aspekty cieľového systému
Používateľ neformuloval žiadnu dalšiu požiadavku na systém
Ku každej používateľskej požiadavke je definová jej formálna reprezentácia
Kompletnosť požiadaviek znamená, že:
Nie sú navzájom v rozpore
Pokrývajú všetky všetky dôležité aspekty cieľového systému
Používateľ neformuloval žiadnu dalšiu požiadavku na systém
Ku každej používateľskej požiadavke je definová jej formálna reprezentácia
Proces spracovania požiadaviek:
Je proces, ktorý končí nasadením systému do prevádzky
Nezávisí od aplikačnej domény cieľového systému
Zahŕňa aktivity týkajúce sa zberu požiadaviek, ich analýzy, validácie a manažovania
Je iteratívny
Pre koho by mala byť zrozumiteľná formulácia používateľských a systémových požiadaviek?
Používateľské aj systémové požiadavky musia byť vo forme zrozumiteľnej vývojovým pracovníkom a manažérom
Používateľské požiadavky aj systémové požiadavky musia byť vo forme zrozumiteľnej koncovým používateľom cieľového systému
Používateľské požiadavky musia byť vo forme zrozumiteľnej koncovým používateľom a zainteresovaným manažérom na strane zákazníka a dodávateľa
Systémové požiadavky musia byť vo forme zrozumiteľnej programátorom a manažérom
Pri zapisovaní systémových požiadaviek je možné používať
Prirodzený jazyk
Matematické špecifikácie
Štruktúrovaný prirodzený jazyk
Jazyk pre popis návrhu
Pri zapisovaní systémových požiadaviek je možné používať
Matematické špecifikácie
Prirodzený jazyk
Štruktúrovaný prirodzený jazyk
Prirodzený UML jazyk
Problém pri zápise požiadaviek v prirodzenom jazyku môže byť v
Mixovaní funkčných a nefunkčných požiadaviek, čo je proces amaigamácie
V procese amalgamácie, keď je v jednej požiadavke vyjadrených viacero rôznych požiadaviek
Príliš rigidnom popise požiadavky
Strate precíznosti popisu požiadavky
Pri zapisovaní požiadaviek prirodzeným jazykom je výhodou, že
Sú najstručnejšou formou zápisu požiadaviek, bez diagramov a tabuliek
Sú intuitívne, expresívne a univerzálne
Umožňujú flexibilitu ich interpretácie
Takto definovaným požiadavkám porozumejú aj klient a používatelia
Pre zápis požiadaviek platia pravidlá
Je potrebné pripraviť viacero alternatívnych popisov požiadavky pre proces negociácie
Je potrebné používať jazyk konzistentným spôsobom
Je potrebné používať počítačový žargón, pretože ide o informačné systémy
Je potrené pripojiť aj vysvetlenie, prečo je požiadavka potrebná
Čo popisuje diagram prípadov použitia (jazyk UML)?
Spôsob zapojenia aktérov do interakcie so systémom
Aktérov
Možnosti interakcie so systémom
Poradie spracovania udalostí v systéme
Čo znamená overenie konzistencie požiadaviek?
či sa dajú požiadavky realizovať za daných podmienok (technológie, rozpočet)
či sa dajú overiť všetky požiadavky
či nie sú konflikty medzi požiadavkami
či sú zahrnuté všetky požadované funkcionality
či požiadavky čo najlepšie zodpovedajú potrebám zákazníka
Kto pristupuje k dokumentu požiadaviek?
ákazník
Systémoví inžinieri
Testéri integrácie
Testéri metód tried implementácie
Manažéri softvérového procesu
Zamestnanci údržby softvéru
Tvorcovia systémových testov
Koľko stojí odstránenie chyby v dokumente požiadaviek, ak je odhalená až po dodaní softvéru (pribižná cena)?
Má rovnakú cenu ako odstránenie implementačnej chyby
Je stokrát lacnejšia ako odstránenie implementačnej chyby
Stojí asi stonásobok ceny odstránenia implementačnej chyby
Nefunkcionálne požiadavky na systém:
Môžu významne ovplyvniť konzistenciu celého systému požiadaviek
Nemajú žiaden vplyv na funkcionalitu systému
Nemajú vplyv na iné požiadavky
Ovplyvňujú návrh architektúry systému
Nefunkcionálne požiadavky na systém:
Sú vždy menej dôležité ako fukcionálne, pretože neovplyvňujú funkčnosť cieľového systému
Sa týkajú jeho použiteľnosti, spoľahlivosti a bezpečnosti
Môžu byť kritickejšie ako funkcionálne, pretože ich nesplnenie môže viesť k nepoužiteľnosti cieľového systému
Majú vplyv na funkčnosť systému
Nefunkcionálne požiadavky na systém:
Býva ťažké stanoviť presne, ale je to potrebné pre verifikáciu systému
Nemajú vplyv na implementáciu systému
Sú nemerateľné
Definujú metódu implementácie služieb systému bez použitia knižničných funkcií
Nefunkcionálne požiadavky na systém špecifikujú:
Aké kvantitatívne a aké kvalitatívne vlastnosti majú mať poskytované služby v cieľovom systéme
Pre aké funkčné miesta v cieľovej organizácii nebude cieľový systém poskyovať žiadne služby
Aké budú sankcie za nefunkčnosť služieb cieľového systému
Aké správy by mal systém poskytovať, keď niektorá z jeho služieb bude z nejakého dôvodu nefunkčná
Inžinierstvo požiadaviek (requirements engineering) je:
Proces súvisiaci so zberom a analýzou požiadaviek na systém
Predprojektová fáza životného cyklu softvérových systémov ukončená podpisom kontraktu na dodávku softvérového systému
Je proces, ktorý suvisí len so štúdiou realizovateľnosti systému
Softvérový proces súvisiaci s celým životným cyklom systému
Inžinierstvo požiadaviek (requirements engineering) je:
T oddelenie softvérovej firmy, ktoré zhromažďuje požiadavky na inovácie podnikových IS
Proces orientovaný na stanovenie služieb, ktoré bude poskytovať cieľový systém a obmedzení, ktoré musia byť zohľadnené pri vývoj a používaní služieb cieľového systému
Softvérový proces zameraný len na presné formulovanie a zapracovanie všetkých požiadaviek zákazníka do vyvíjaného systému
Proces, ktorého výsledkom sú požiadavky na systém
Pri zbere, formulácii a spracovaní požiadaviek na systém je potrebné zohľadniť požiadavky:
Len vlastníkov systému
Vlastníkov systému
Koncových používateľov
Manažérov na strane zákazníka
Pri zbere, formulácii a spracovaní požiadaviek na systém je potrebné zohľadniť požiadavky:
Len subjektov, ktoré sú účastníkmi zmluvy pre vývoj a dodávku cieľového softvérového systému
Externých subjektov a objektov týkajúce sa predpokladanej komunikácie s cieľovým systémom
Vyplývajúce zo špecifík aplikačnej domény (legislatíva, pravidlá, smernice a pod.)
Externých subjektov a objektov týkajúce sa všetkých vlastností cieľového systému
Kedy sa používa architektonický vzor viacvrstvovej architektúry?
Keď údaje majú byť zdieľané medzi rôznymi miestami prístupu.
Keď v systéme sa vytvára veľké množstvo dát, ktoré treba spracovávať I dlhšie ukladať.
Ak je úlohou spracovať údaje od vstupov k výstupom v oddelených krokoch.
Keď vytvárame nové facility nad existujúcim systémom.
Keď je viac spôsobov interakcie a prezentácie dát.
Ktorý pohľad je označený ako +1 v modeli 4+1?
Pohľad procesov
Pohľad nasadenia (fyzický pohľad)
Implementačný (vývojový) pohľad
Logický pohľad
Pohľad prípadov použitia
Model 4+1 pohľadov pozostáva z piatich pohľadov, tie sú:
Logický pohľad, Implementačný (vývojový) pohľad, Pohľad testovania, Pohľad nasadenie (fyzický pohľad), Pohľad prípadov použitia
Logický pohľad, Implementačný (vývojový) pohľad, Pohľad procesov, Pohľad nasadenie (fyzický pohľad), Pohľad prípadov použitia
Konceptuálny pohľad, Fyzický pohľad, Logický pohľad, Implementačný pohľad, Pohľad testovania
Kde sa používajú architektonické modely systému?
V dokumentácii systémovej architektúry
Nepoužívajú sa, keby sa používali, boii by povinné
V diskusii o systéme so zákazníkom
Akým architektonickým rozhodnutím dosiahneme najvyššiu dostupnosť systému?
Zavedením redundantných komponentov a mechanizmov obnovy.
Použitím malých komponentov (tie sa aj ľahšie nahrádzajú).
Lokalizáciou kritických vlastností do malého počtu podsystemov.
Použitím viacvrstvovej architektúry a umiestnením kritických prvkov do vnútorných vrstiev.
Lokalizáciou kritických operácií a minimalizáciou komunikácie. Použitím skôr väčších komponentov.
Kedy sa používa architektonický vzor klient-server?
Keď vytvárame nové facility nad existujúcim systémom.
Keď údaje majú byť zdieľané medzi rôznymi miestami prístupu.
Keď v systéme sa vytvára veľké množstvo dát, ktoré treba spracovávať I dlhšie ukladať.
Keď je viac spôsobov interakcie a prezentácie dát.
Ak je úlohou spracovať údaje od vstupov k výstupom v oddelených krokoch.
Pri návrhu architektúry cieľového systému je užitočné použiť generické aplikačné architektúry. pretože:
Nie je potrebné ich modifikovať pre splnenie požiadaviek danej aplikačnej domény.
Je možné s ich využitím automatizovať syntézu cieľového systému generovaním kódu
Zohľadňujú požiadavky, ktoré sú spoločné pre biznis v rôznych aplikačných doménach a tak zjednodušujú riešenie využitím existujúcich komponentov
Sú konfigurovateľné pre splnenie špecifických požiadaviek aplikačnej domény
{"name":"Ip 1-40", "url":"https://www.quiz-maker.com/QPREVIEW","txt":"Agilné metódy vývoja softvéru, Požiadavky môžeme deliť na:, Požiadavky možno deliť na:","img":"https://www.quiz-maker.com/3012/images/ogquiz.png"}
Powered by: Quiz Maker