Obsah

Softwarové inženýrství pro praxi

Cvičení

Cvičení první týden nejsou.

Zkouška

3.1.2011
9.1.2012

Časté otázky

Co je to bod LCO, LCA, IOC + dopad na plán projektu?

Jsou to milníky vyskytující se během fází vývoje SW

* LCO (Live cycle objectives)

* LCA (Live cycle architecture/activities)

* IOC (Initial operation capability)

Programování zabírá 20% – 40% nákladů (v člověkodních) na projekt. Jaké činnosti spotřebovávají zbytek? Které z nich jsou primární a které podpůrné? V jakém poměru jsou tyto dvě kategorie?

* Hlavní:

* Podpůrné

* Hlavní x Podpůrné - 70:30%

Podle čeho se dá strukturovat SRS? (Myšleno takové to XXX-centric)

* Časté:

* Méně časté

Co je model GUI, k čemu slouží a v čem se dá udělat?

je to vlastně prototyp UI

slouží k:

v čem udělat:

Co je to architektura a jaký má vztah se SRS?

možné definice, architektura je:

Definice struktury systému, strukturu tvoří komponenty, ze kterých se systém skládá. Z vnějšku viditelné vlastnosti těchto komponent a vztahy mezi nimi

vztah se SRS:

Popište čtyři základní pohledy na architekturu. (Takový ten obrázek se scénáři uprostřed.)

Napište atributy testů a co znamenají. (Chtěl tak čtyři.)

  1. Power : vysoká pravděpodobnost nalezení problému, pokud existuje
  2. Valid : odhalí skutečné chyby
  3. Value : odhalí chyby důležité pro uživatele
  4. Credible : odpovídá očekávanému chování uživatele
  5. Representative : odpovídá tomu, čeho si uživatel nejpravděpodobněji všimne
  6. Non-redundant : reprezentuje skupinu testů, které se zaměřují na stejné riziko
  7. Motivating : „klient“ bude chtít chyby nalezené testem opravit
  8. Performable : proveditelný v souladu s návrhem
  9. Maintainable : udržovatelný při změnách systému
  10. Repeatable : snadný - a levně znovupoužitelný
  11. Pop (Karl Popper) : odhalí věci týkající se základních či kritických předpokladů
  12. Coverage : vyzkouší systém způsobem, kterým to nečiní jiné testy
  13. Easy t - evaluate : snadné a jasné vyhodnocení
  14. Appropriately complex : dostatečná komplexnost
  15. Accountable : obhajitelnost, prokazatelnost testu
  16. Supports troubleshooting : poskytuje užitečné informace k ladění nalezených problémů
  17. Cost : přímé náklady, čas a pracnost
  18. Opportunity cost : náklady, které se ušetří provedením testu

Na jaké základní části se dělí dokumentace, jaké obsahují podkategorie? Napište příklady v kategoriích. (2 hlavní a u každé 2 podkategorie + příklad)

* Dokumentace Procesu

* Dokumentace Produktu

Vysvětlete pojmy „správa verzí“ a „řízení změn“ a řekněte jak souvisí s SVN. Vysvětlete pojmy tag, branch, main trunk. (Bylo tam „řízení změn“ a ne „změnové řízení“, tak nevím.)

Napište osnovu plánu projektu ve které není záměrně nic důležitého vynecháno. (plány jsou obvykle projektu, konfiguračního řízení, testování)

Co je to historie, co obsahuje a proč se dělá?

Data z minulých projektů

Proč (poučení z minulosti, záznam o změnách):

Jaké jsou základní druhy metrik, k čemu jsou?

  1. time (kalendářní čas):z evidence práce
  2. size (rozsah, LOC):počet řádek kódu, CVSstat
  3. effort (pracnost, MD, issues):z evidence práce
  4. quality (jakost, počet chyb):Bugzilla, Jira

Co je to V-model, k čemu slouží a co znamená?

V-Model je zjednodušený model, který slouží k pochopení vývoje software, tj. zejména posloupností kroků, které po sobě následují.V-Model

když píšu požadavky, tak vlastně zároveň definuji akceptační testování, když navrhuji design, tak vlastně definuji integrační a systémové testy, které pak budou testovat požadované vlastnosti atd.

Co je to testovací technika, k čemu slouží?

Testovací technika je recept pro provádění těchto činností s cílem objevit něco, co stojí za reporting.

Určuje tedy co by nás mělo zajímat při testování.

Její výběr záleží na

Př.:

Popiste zakladni cinnosti Softwaroveho inzenyrstvi. Jakeho jsou typu (primarni, podpurne)? A strucne kazdou charakterizujte.

Model zivotniho cyklu software/SDLC. K cemu slouzi? Příklady. Souvislost SDLC a primarnich + podpurnych cinnosti SW inzenyrstvi z min.otazky. + Příklady 2 SDLC

Určuje kdy se provedou jednotlivé fáze vývoje, na co bude kladen důraz (dokumenty, kód management, diagramy)

Určují kompromis mezi: Time, cost, scope, quality (agilní mají proměnou cenu a rozsah, běžné pouze čas)

Typy:

Naroky na specifikaci pozadavku na software / system. Diskutujte naroky na formu, obsah, zpusob pouziti.

Forma:

obsah má být komplexní má obsahovat pozitivní i negativní vymezení

požadavky:

použití:

rozdíl mezi verzí konfigurační jednotky a verzí softwarového díla

mám pár názorů, ale počkám zda někdo nenapíše něco rozumného, abych tu nepsal blbosti

konfigurační jednotka: programy, dbs schema, data, konfigurace

Co je architektonicky styl (ve smyslu sw. inzenyrstvi) + priklady.

Definice:

př.:

Kvalifikacni a akceptacni testovani * charakterizovat, popsat rozdily.

Kvalifikační - testování dodavatelem, je to výstupní kontrola před dodáním. Kompletní ověření všech systémových funkcí

Akceptační - testování zákazníkem, před dodáním do produkce. Rozhodnutí zda dodávku přijme

Rozdíly - podle toho kdo testuje, kvalifikační je také velmi často automatizované (regresní testy)

Popiste jake KONKRETNI kroky provedete, pokud chcete rozjet Continuous integration (Smoke testing, night buildy) (+obrázek)?

Jenkins, popsat, jak by se co nastavilo, kam s kódem … Prakticky popis toho, co se dělalo na cvikách.

Nakreslil bych ten obrázek co byl v přednášce, pak jak se nasadí verzovací systém, integrační platforma (Jenkins). Jak se pouští noční build a že je o výsledcích testů někdo informován.

Tag a branch, vysvetlete jaky je mezi nimi rozdil.

To už tu jednou bylo…

Jako projektovy manazer budete zakaznikovi hlasit rizika. Jak pravidelne to budete delat? Co bude obsahem sdeleni? Jakou formou to delat, aby to vubec melo smysl.

Tohle jsem nikde nenašel, ale podle toho, jak se to dělá u nás: Rizika se probírají na schůzích, které jsou jednou za 14 dní(u větších projektů), případně se řeší podle závažnosti hned. Posílají se minimálně e-mailem, abych měl záznam o tom, že jsem to zíkazníkovi poslal. Lépe je issue tracker. Obsah sdělení je důvod rizika, cena a doba opravy a proč je nutné to dělat.

Dle mého hlavně v nabídce a během řešení change requestu. Pak mimořádná rizika, která se objeví na schůzkách.

Vzajemna souvislost, popis a naroky kladene na prostredi * vyvojove, integracni, testovaci, akceptacni, produkcni.

Vývojové - kde se vyvíjí, Integrační: Slouží ke spojení více aplikací, většinou pro integrační testy, Testovací: Slouží pro Unit testy, Akcepační: Slouží pro akceptační testy, Produkční: Tam to běží.

Prostředí by si měly být co nejvíc podobné

Koncepty integrace a principy na kterých jsou založeny

jak zavést evidenci změnových řízení

Podle mě nejlélpe Issue trackerem minimálně a propojovat změny k sobě. JIRA umí jak spojit změny, tak evidovat jejich pracnost.

Napište materiál ze kterého jste se učili a co vás na něm zaujalo.

Joooo Google !!

Otázky z 14.1.2013, které nejsou výše

Co je to IOC Anchor point, k čemu se to váže atd.

Vyjmenujte způsoby dekompozice požadavků, porovnejte je a v jakých fázích použijete jaké dekompozice a proč?

Vysvětlete SDLC (asi chtěl ten graf?) a řekněte v jaké fázi vývoje můžete začít programovat a kdy může prograování skončit a proč?

Vyjmenujte atributy požadavků a krátce je popište (chtěl jich snad 8)?

Cíle CM plánu (stručně vysvětlete)

Co kdo požaduje od architektury (ve slajdech je taková tabulka)

Co má být v plánu CM + návrh osnovy

5 typů testů + k čemu jsou

kroky při odhadování požadavků

Rozdíl mezi frameworkem a knihovnou, hot spot vs frozen spot

Kužel nejistoty + něco, co si přesně nepamatuju

K tomu sdlc, chtěl graf, kde je na jedný ose pracnost a na druhý jednotlivý fáze SDLC

Ústní

Z písemky jsem dostal 25 b (jestli si dobře vzpomínám) a byla mi navrhnuta známka C. Musel jsem jít na ústní (ano, v mém případě byla povinná, chtěl jsem si ji nechat zapsat, ale nešlo to…). O termínu ústní s nimi lze diskutovat. Mě byli navrhnuty 3 termíny hned další týden po písemce. Po výměně několika emalů jsem se snimi dohodl na termínu až za dalších 14 dní po písemce. Byl jsem u p. Zoubka. Posadili si mě do nějaké zasedačky a cca po 5 minutách tam přišel i Zoubek (byli jsme tam sami…). Ústní probíhala tak, že jsme spolu postupně procházeli všechny nedostatky v testu. Potom se mě zeptal, jestli mám nějakou praxi, když jsem řekl že ne, tak mi odpověděl, že se mě teda musí ještě na něco zeptat :-). Položil mi ještě asi 2 otázky. Otázky neobsahovaly žádně špeky a p. Zoubek byl velmi trpělivý, když jsem něco hned nevěděl, tak se mě snažil popostrčit. Nakonec jsem si odnesl B. Ústní trvala cca 20 min.