Toto je starší verze dokumentu!
Hotovo 60%
Prumyslové aspekty IS, nefunkcionální požadavky na systémy podle ISO 9126, kapacitní plánování systémů, zajištění odezvy a škálovatelnosti systému.(A0M33PIS)
ISO 9126
Normy řady ISO 9126 stanovují obecné požadavky na jakost softwarového produktu. V současnosti jsou postupně nahrazovány novou (velmi podobnou) řadou norem ISO 25000, vyvíjených v rámci mezinárodního normalizačního projektu SQuaRE.
9126-1 Model jakosti - přináší model kvality a specifikuje 6 charakteristik jakosti, kde každá charakteristika má několik podcharakteristik
9126-2 Vnější metriky - externí metriky pro měření
9126-3 Vnitřní metriky - interní metriky pro měření
9126-4 Metriky pro jakost použití - zabývá se problematikou jakosti při použití softwarového produktu (Quality in Use).
9126-1 Model jakosti
ISO 9126 vs. ISO25000
ISO 9126 | ISO 25000 (SQuaRE) |
Metrik je navrženo příliš mnoho (přes 200), není jasné, které kdy vybrat | Vytváří jednotnou architekturu řady norem a zastřešující příručku |
Není jasné, jak formulovat potřeby a převést je do měřitelných požadavku | Vytvořit příručku pro to, jak užívat metriky |
Není jasné, kterou „jakost“ zkoumat (vnitřní, vnější, produktu) | Definuje primitiva pro měření, např. prvky měřené přímo (čas, počet, kategorie) |
9126-1 Model jakosti | Zavádí metriky pro objektivizaci požadavků na jakost |
9126-2 Vnější metriky | 25010 Model jakosti |
9126-3 Vnitřní metriky | 25020 Metriky |
9126-4 Metriky pro jakost použití | 25030 Požadavky na jakost |
9126-5 Základní softwarové metriky | 25040 Vyhodnocování jakosti |
Volba architektury IS – doporučené kroky
Analyzujte hlavní funkční požadavky a nefunkcionální požadavky na systém, stanovte požadavky a cíle kvality.
Použijte přizpůsobený standard ISO 9126, resp. ISO 25000 jako rámec pro hodnocení (obvykle vyžaduje dodefinovat specifické metriky a ukazatele podle konkrétních systémových požadavků, např. na specifické komponenty nebo rozhraní).
Připravte prvotní návrhy řešení architektury systémů.
Sestavte srovnávací tabulky pro porovnání návrhů.
Určete priority (váhy) jednotlivých charakteristik, případně jejich hierarchii.
Analyzujte výsledky sumarizované v tabulce s ohledem na priority z kroku 5.
Zvolte výchozí architekturu mezi kandidáty na základě předchozí analýzy.
Je-li vyžadována podrobnější analýza, soustřeďte se na charakteristiky relevantní problémové doméně, s ohledem na priority, získané v kroku 5.
Škálovatelnost (rozšiřitelnost)
vlastnost systému, indikující jeho schopnost přizpůsobit se rostoucím požadavkům na kapacitu, výkon, odezvu, dostupnost systému a atd., popřípadě být připraven na rozšíření.
Škálovatelnost je často omezena
návrhem/implementací systému
Dimenze škálovatelnosti
Load scalability: Schopnost distribuovaných systémů rozšířit/zúžit využitelné zdroje v závislosti na zátěži. Alternativně, schopnost snadné modifikace systému nebo komponenty podle zátěže.
Geographic scalability: Schopnost udržet výkonnost, použitelnost atd. v podmínkách geografického rozšiřování.
Functional scalability: Schopnost rozšiřování systému o nové funkcionality s minimalizací úsilí.
Kompromisy k řešení při návrhu systému:
výkon vs. škálovatelnost
cena vs. škálovatelnost (contribution margin = revenue – variable costs)
operabilita vs. škalovatelnost – škálovatelnost rozsáhlých a komplexních systémů omezuje možnosti „manuální“ správy systému
funkcionalita vs. škálovatelnost
konsistence replikace dat vs. škálovatelnost
Kategorie škálovatelnosti:
HW škálovatelnost
Často se doporučuje soustředit se na hardwarovou rozšiřitelnost před kapacitní. Je levnější přidat procesor, než ladit výkon.
Příklad: Část programu lze zrychlit o 70%, je li spouštěna paralelně na čtyřech CPU. Je-li 1-P sekvenční část výpočtu a P je část, kterou lze paralelizovat, maximální zrychlení s využitím N procesorů udává Amdahlův zákon:
Zajištění odezvy systému - Real Time systémy
systém reálného času - informační systém, který zpracovává asynchronní vstupy a produkuje odpovědi v pevně stanoveném čase.
Doba, kterou má systém k dispozici pro provedení úlohy, je známa předem.
Na počtu vstupů a jimi vyvolané pracovní zátěži systému přitom nezáleží.
systém reálného času - informační systém, který zpracovává asynchronní vstupy a produkuje odpovědi.
hard RT - systém vždy musí splnit daný časový termín (např. řízení létajícího prostředku, jaderného reaktoru aj.)
soft RT - konkrétní časové okamžiky mohou být zmeškány. (např. optimalizace spotřeby paliva v motoru).
požadavky pro RTOS definuje standard Posix 1003.1b, Real-time extensions
Zdroje
Přednášky předmětu A0M33PIS
Nahoru