Otázky z testu Flashcards

(56 cards)

1
Q

1) Ve kterém období se začal používat pojem “softwarové inženýrství”?

A

1960-1970

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
2
Q

Co softwarové inženýrství poskytuje vývojářům?

A
  • Základní bázi znalostí

- Podrobný návod, jak plánovat.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
3
Q

Čím se zabývá programování v malém?

A

Řešením jednotlivých modulů

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
4
Q

Čím se zabývá programování ve velkém?

A

Dekompozicí softwaru

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
5
Q

Co je hlavním cílem programování ve velkém?

A

Plánováním rozsáhlých systémů ?

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
6
Q

Čím se projevuje “softwarová krize”?

A

a. 60 léta
b. Neúnosné prodlužování
c. Prodražování projektů
d. Nízká kvalita výsledných produktů
e. Problematická údržba
Nízká produktivita práce progrmátorů

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
7
Q

Pro koho je vytvářen generický software?

A

Pro neznámého uživatele

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
8
Q

Pro koho je vytvářen zákaznický software?

A

Pro konkrétního zájemce.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
9
Q

Jaké problémy mohou vznikat v projektech s vývojem softwaru?

A

a. Složitost
b. Přizpůsobivost (když se něco změní, měl by se přizpůsobovat software a ne naopak)
c. Nestálost (přibývají požadavky, mění se okolí a mění se i software)
d. Neviditelnost
i. Nelze určit co v dané reprezentaci chybí
ii. Ilustrací neviditelnosti je 90% syndrom

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
10
Q

Co může patřit do problémů neviditelnosti v projektech s vývojem softwaru?

A

90% syndrom

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
11
Q

Co patří do problémů složitosti v projektech s vývojem softwaru?

A

Komunikace v týmu

Složité stavy softwaru

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
12
Q

Do jaké kategorie problémů problémů lze zařadit netriviální stavy softwaru?

A

Složitosti

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
13
Q

Jak si vysvětlujete problém “přizpůsobilosti” ve vývoji softwaru?

A

Když se něco změní, měl by se přizpůsobit SW a ne naopak.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
14
Q

Co je to správnost softwaru?

A

Správností rozumíme, že výsledky odpovídají specifikaci.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
15
Q

Co je to model životního cyklu?

A

a. Rozdělují proces vývoje SW na po sobě jdoucí etapy (někdy i souběžně)
b. Zahrnují podstatné prvky přístupu k vývoji softwaru
Liší se v posloupnosti jednotlivých vývojových etap

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
16
Q

Co může být problémem v projektech s vývojem softwaru?

A

a. Příčný řez
i. Nedostatečná dokumentace, poskytování jen zdrojových kódů, programátor se soustředí jen na implementaci daného podsystému atp. způsobí:
1) Když na vývoji systému musí pokračovat jiný programátor
2) Ten většinou zjistí, že bude efektivnější začít s vývojem od začátku
3) Nebo když dostane za úkol převzít nebo pomoct na jiném subsystému

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
17
Q

Jak specifikace požadavků může být problémem v projektech s vývojem softwaru?

A

a. Když je neformální, nejasná, neúplná a rozporuplná -> výsledek by se lišil od představy zákazníka.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
18
Q

Je dobře formulovat požadavky neformálně přirozeným jazykem? (ano/ne)

A

Ne.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
19
Q

Je vhodné zapisovat požadavky neformálním způsobem?

A

Ne.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
20
Q

Mohou se požadavky během projektu měnit požadavky?

A

Ano.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
21
Q

Je software náchylné k chybám? (ano/ne)

A

Ano

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
22
Q

Může komunikace v týmu ovlivnit vznik problémů v projektu s vývojem softwaru? (ano/ne)

A

Ano

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
23
Q

Co způsobí přidání dalších pracovníků do zpožděného projektu?

A

Prodlouží se doba trvání projektu

24
Q

Co může způsobit přidání dalších pracovníků do zpožděného projektu?

A

a. Projekt se ještě více zpozdí.

b. Přidání více programátorů nic neřeší (z hlediska času)..

25
Vypište s jakými problémy se může setkat projekt, když se ve značně rozpracovaném stavu, přidají do řešitelského týmu další pracovníci.
a. Komunikace s novými členy týmu b. Seznámení se s projektem = nejdřív musí pochopit co, jak a proč je v projektu naprogramované/řešené, tak jak je.
26
Co způsobuje problémy v rozsáhlých softwarových projektech?
a. Komunikační problémy: i. Práce ve velkých SW projektech se těžko organizuje a plánuje. ii. Produktivita jednotlivých programátorů se může značně lišit. Může to být extrémně až 1:20 iii. Přidání dalších programátorů do zpožděného projektu projekt ještě více zpozdí.
27
Co může být problémem v projektech s vývojem softwaru? ------
a. Komunikace | Nízká znovupoužitelnost
28
Co způsobuje nízká znovupoužitelnost software?
Neustálé programování obdobných modulů
29
Lze metody řešení malých problémů použít na řešení velkých (složitých) problémů?
Ne
30
Co roste s velikostí softwarového projektu?
Dokumentace. Čím je dokumentace rozsáhlejší a rozmanitější, tím hůře se udržuje její aktuálnost vzhledem ke stavu SW, úplnosti a konzistenci.
31
Co způsobuje stárnutí softwaru?
a. Když je potřeba nahradit úspěšný SW systém novým: i. Nový systém bude příliš složitý, nepřehledný a neefektivní. Dalším rizikem při návrhu druhého systému je nepoužití nových technologií.
32
Co to znamená, když nastanou problémy v projektu v důsledku syndromu druhého systému?
a. Když je potřeba nahradit úspěšný SW systém novým: | i. Nový systém bude příliš složitý, nepřehledný a neefektivní. Dalším rizikem při návrhu dr
33
Co nepatří do požadavků?
a. Podrobnosti o návrhu b. Podrobnosti o implementaci c. Informace o plánování d. Informace o testování
34
Kategorie požadavků
a. Funkční požadavky b. Nefunkční požadavky c. Ostatní: i. Podnikatelské požadavky ii. Uživatelské požadavky iii. Funkční požadavky iv. Systémové požadavky
35
Jak se mohou dále dělit nefunkční požadavky?
a. V jakém programovacím jazyku bude systém implementován b. Jaké bude mít výkonnostní parametry c. Pro jaký hardware bude určen d. Pro jaký operační systém bude určen
36
Čím je modelování případů užití?
Je to jedna z forem inženýrství požadavků.
37
K čemu jsou dobré případy užití?
a. Ke správnému pochopení uživatelských požadavků. | Snaží se zjistit, čeho potřebují dosáhnout uživatelé.
38
41) Z jakých aktivit se skládá modelování případů užití?
a. Nalezení hranic systému (zjistit si, co jsou to hranice systému) b. Vyhledání aktérů / účastníků c. Nalezení případů užití i. Specifikace případů užití ii. Určení alternativních scénářů
39
Co jsou aktéři?
a. Kdo nebo co používá systém i. Aktéři / účastníci jsou vyjádřením rolí v kterých bezprostředně používají daný systém 1) Aktér může vyjadřovat roli uživatele, roli dalšího systému, který se dotýká hranic Vašeho systému ii. Aktéři jsou vůči systému externími entitami iii. Aktér specifikuje roli, kterou určitá externí entita přijímá v okamžiku, kdy začíná daný systém používat
40
43) Co je případ užití?
a. Případ užití je něco, co aktér od systému očekává. Je to "případ užití systému specifickým aktérem". b. Případy užití jsou vždy iniciovány aktérem i. Hlavní aktér spouští případ užití ii. Žádný nebo více vedlejších aktérů jsou v interakci s případem užití po jeho spuštění c. Případy užití jsou vždy napsány z pohledu aktéra.
41
44) Co je to relace v diagramech případů užití?
a. Vazba mezi aktéry a případy užití
42
45) Čím jsou aktéři vzhledem k systému?
a. Kdo nebo co používá systém
43
Jak lze hledat aktéry?
a. Ptejme se: i. Kdo nebo co používá systém? ii. Jakou roli v této interakci hraje? iii. Kdo instaluje systém? iv. Kdo spouští a vypíná systém? v. Kdo se stará o jeho údržbu? vi. Jaké další systémy spolupracují se systémem? vii. Kdo systému zadává informace a kdo je používá? viii. Děje se něco v určitou dobu?
44
Kým jsou případy užití inicializovány?
Aktérem
45
Kým jsou případy užití inicializovány?
Aktéry
46
Jak se určují případy užití?
a. Nejprve projděte seznam aktérů a zvažte způsob, jímž bude každý z nich systém používat. b. Při určování případů užití se ptejte: i. Jaké funkce jednotliví aktéři od systému očekávají? ii. Bude systém poskytovat a uchovávat informace? Pokud ano, jací aktéři budou tyto činnosti aktivovat? iii. Jací aktéři budou upozorněni na změnu stavu systému? iv. Existují nějaké vnější události, které ovlivňují systém? Co upozorní systém na tyto události? v. Reaguje systém na vnější systémy? vi. Generuje systém zprávy?
47
K čemu je dobrý slovníček pojmů?
Každé odvětví má vlastní žargon, jazyk, terminologii. Je důležité zachytit jazyk ve slovníčku pojmů daného projektu.
48
Kdy je dobré modelovat případy užití?
V systémech, v nichž převládají funkční požadavky. | c. V systémech s mnoha typy uživatelů, kterým systém poskytuje různé funkce (systém má mnoho aktérů)
49
52) Kdy není vhodné modelovat případy užití?
a. V systému převládají nefunkční požadavky b. Systém má málo uživatelů c. Systém má málo rozhraní
50
Proces vývoje softwaru
a. Transformace potřeb uživatelů do požadavků b. Na základě požadavků dochází k vytvoření návrhu systému c. Implementace návrhu do SW systému d. Testování SW systému e. Předání systému uživateli Co Kdo Dělá Kdy
51
Co je primárním cílem podnikatelských plánů.
Vytvoření opory, která pomůže při realizaci podnikatelské myšlenky Návod jak zaznamenávat všechny myšlenky a nápady
52
Pravidla myšlenkových map.
a. Hlavní téma se umisťuje do středu mapy b. Jednotlivé části (klíčová slova) se rozmisťují kolem středu a spojují se se středem čarami c. Části lze dále větvit do libovolné úrovně d. Pomocnými čarami nebo šipkami lze zachytit vztahy napříč hierarchií e. Používají se jednotlivá slova nebo krátká slovní spojení
53
56) K čemu slouží scénáře v případech užití a jaké máme?
a. Jaké máme? i. Hlavní scénář ii. Alternativní scénář/e b. Co to je / k čemu slouží? i. Vyjadřuje jeden konkrétní průchod případem užití
54
57) Jak můžeme hledat aktéry?
a. Ptejme se: i. Kdo nebo co používá systém? ii. Jakou roli v této interakci hraje? iii. Kdo instaluje systém? iv. Kdo spouští a vypíná systém? v. Kdo se stará o jeho údržbu? vi. Jaké další systémy spolupracují se systémem? vii. Kdo systému zadává informace a kdo je používá? viii. Děje se něco v určitou dobu?
55
Co je UML?
a. Jednotný neboli unifikovaný grafický modelovací jazyk (notace), který se používá při vývoji softwaru.
56
59) Lepší alternativu na otázku "jak se případy užití hledají":
a. Najdete aktéry a pak všechny podnikatelské procesy, kterých se tito aktéři účastní. b. Najdete vnější události, na které systém musí odpovídat, a tyto události pak spojíte s příslušnými aktéry a případy užití. c. Pomocí scénářů užití popíšete všechny podnikatelské procesy, scénáře užití zobecníte do případů užití a nakonec najdete aktéry, kterých se tyto případy užití týkají. d. Případy užití odvodíte ze stávajících funkčních požadavků. Pokud některé z funkčních požadavků nevedou k žádnému případu užití, zamyslete se, jestli je doopravdy potřebujete.