
- •Co je předmětem fáze analýzy požadavků na informační systém? Analýza
- •Výstupem analýzy:
- •Co je smyslem modelem řízeného vývoje (mda, resp. Mdd)?
- •Co to je architektura informačního systému? Uveďte typické příklady architektury.
- •Integrace stávajících aplikací
- •Co to je bezpečnost informačních systémů, jak se zajišťuje?
- •Co to je inspekce produktu?
- •Inspekční setkání
- •Co to je programové rozhraní (api), jak se navrhuje?
- •Co to je síťový graf (pert)?
- •Co to je sloupcový diagram (Gantt Chart)?
- •Co to je softwarové inženýrství a proč vzniklo?
- •Co to je softwarový projekt a jaké jsou jeho charakteristické rysy?
- •Co to je uml, k čemu V kontextu softwarového inženýrství slouží?
- •C o to jsou funkční a nefunkční požadavky?
- •Co to jsou softwarové metriky, kdy se používají?
- •Co to jsou stupně dospělosti vývoje (cmm), jak se liší?
- •Jaké dokumenty jsou vstupem a výstupem fáze návrhu informačního systému?
- •Vstupy:
- •Výstupní dokumenty návrhu
- •Jaké metodiky řízení vývoje informačních systémů znáte?
- •Jaké metody modelování informačních systémů znáte?
- •Jaké metody se používají pro řízení kvality vývoje informačních systémů?
- •Jaké metody testování softwarových produktů znáte?
- •Jaké nástroje pro vývoj informačních systémů znáte? Ve kterých fázích se používají?
- •Implementace:
- •Výběr vhodného case nástroje
- •Jaké softwarové profese znáte a co je předmětem jejich zaměření?
- •Jaké techniky plánování znáte, jak se liší?
- •Jaké znáte metody odhadu nákladů na informační systém?
- •Jaký je rozdíl mezi strukturovanými a objektovými metodikami?
- •Vazba (link)
- •Jakými fázemi prochází životní cyklus informačního systému?
- •Na čem je založena technika odhadu dekompozicí?
- •Na čem jsou založeny statistické metody odhadu (cocomo)?
- •Vysvětlete pojem datové modelování, jaké datové modely znáte?
- •Vysvětlete pojem funkční (procesní) modelování, jaké modely znáte?
- •Vysvětlete, co to je akceptační test.
- •1. Podmínky pro akceptační test – za kterých bude splněn
- •2. Dokumentaci pro akceptační test – jak se to má dokumentovat
- •3. Definici akcí pro akceptační test – postup aby naplnil scénář
Jaké nástroje pro vývoj informačních systémů znáte? Ve kterých fázích se používají?
Sběr požadavků a modelování podnikových procesu:
nástroje pro sběr a analýzu požadavků (př. Rational Requisite Pro, TrackRecord, Jira)
modelovaní podnikových procesů (př. Casewise Modeler a některé CASE - např. Enterpise Architect)
Analýza a návrh:
především CASE nástroje pro UML modelovaní, datové modelovaní a návrh databáze, transformace mezi modely, generováni a reportování, forward (generování kódu – z modelu se vygeneruje kód)/reverse (z kódu se vygeneruje modul) engineering
dále to můžou byt i grafické programy pro návrh uživatelských rozhraní (klientské aplikace, tenké klienty atd. - př. MS Visio, DreamWeaver)
Implementace:
vývojová IDE prostředí pro vývoj sw - většinou se jedna o integrované prostředí pro programovaní a ladění v určitém programovacím jazyku s možností připojení a práce v databázi, dále UML (především diagramy tříd), testování jednotek a konvenci (unit testy), nebo generovaní časti kódu či dokumentace (př. Eclipse, Visual Studio, Delphi)
Testování:
podpůrné automatizované testovací nástroje a integrovaná prostředí pro všechny druhy testování a psaní testovacích scénářu - (př. JTest, Rational Test Manager, Robot)
Nasazování (deployment):
různé buildery pro kompletaci balíku a komponent pro distribuci do různých vrstev architektury informačního systému (př. Ant, Maven, Build)
Konfigurační a změnové řízení:
konfigurační řízení - nástroje pro správu verzí, pro teamovou spolupráci - sdílení zdrojů, konfiguraci prostředí (př. Ration ClearCase, SVN, MS Visual SourceSafe, Maven)
změnové řízení - nástroje pro evidenci změn a požadavků s možnosti získávaní statistik a reportů pro projektové řízení (př. Rational ClearQuest, TrackRecord, Jira)
Projektové řízení:
nástroje pro manažery a organizaci projektu, časové a cenové plánování a odhadování, pro sledování průběhu projektu a jeho fázi (př. MS Project, MS Visio)
Společné nástroje:
kancelářské balíky pro dokumentace výpočty a prezentace (př. MS Office)
Co jsou to CASE nástroje a k čemu slouží?
V současné době to jsou softwarové nástroje, které podporují tvorbu softwaru.
CASE Studio, Power Designer, Select Enterprice od LBMS, Oracle Designer, National Rose, atd…
CASE = Computer Aided Software Engineering
V minulosti to byl každý program, který poskytuje podporu při návrhu, údržbě softvaru, nebo
procesu vývoje softwaru (softwarového projektu).
Nyní jsou to především systémy integrovaných nástrojů, které pokrývají více než jednu fázi
životního cyklu softwaru.
CASE nástroje vznikly jako prostředek pro zmírnění softwarové krize. Umožňují „menšímu
počtu programátorů“ vytvářet „více programů“. Takto vytvořené programy by měly být spolehlivější, snadněji modifikovatelné a udržovatelé.
Výběr vhodného case nástroje
Při výběru CASE nástroje je nutné si předem odpovědět na následující otázky:
Podporuje CASE integraci s ostatními nástroji potřebnými pro projekt?
Splňuje nástroj požadavky procesu vývoje vašeho systému?
Jakou notaci nástroj podporuje?
Je možné v rámci vývoje sledovat plnění požadované specifikace?
Je nástroj modulární?
Jak silný má nástroj repositury? Je v databázi nebo v souborech?
Je nástroj otevřený a přístupný modifikacím?
Jak nástroj podporuje verze a sdílení komponent?
Umožňuje spravovat projekt?
Podporuje nástroj kontrolu konzistence, úplnosti a dodržování metodiky?
Jaký je komfort ovládání?
Jaké je možnost sdílení a znovupoužiti (reusing) analýzy či návrhu?
Vytváří nástroj automaticky dokumentaci? Je možno tvorbu ovlivnit?
Generuje nástroj datový model? Pro jaké databáze?
Generuje nástroj kód aplikační logiky? Pro jaké jazyky? Používá nástroj šablony generovaní?
Disponuje nástroj možností round trip engineeringu?
Disponuje nástroj možností reverse engineeringu?
Problémy s CASE nástroji
V současné době existuje celá řada CASE nástrojů, které jsou však velmi drahé, náročné na zvládnutí a neumí vše, co bychom od nich potřebovali. Řada firem CASE nástroje používá, ale pečlivě si tyto systémy chrání a velmi často je ani nezveřejňuje.
Dalšími problémy, spojenými s CASE nástroji je:
Podcenění školení a potřeby adaptace současných softwarových procesů
Neopodstatněný optimizmus (CASE vyřeší všechny problémy).
CASE prostředek v rukách slabého SW inženýra mu umožní vytvářet více špatného softwaru.
Zatím je nedostatečná integrace CASE prostředků.
CASE prostředky jsou drahé a je potřeba s tím počítat.
Rozdělení podle oblasti využití
CASE - Computer Aided Software (System) Engineering SW na podporu tvorby SW produktů, nebo informačních systémů (ERWin, MS project, MinuteMan, Smart Draw, WBS Chart Pro.)
CADE - Computer Aided Engineering SW pro testování, analýzování a simulování vlastností navržených produktů
CAD - Computer Aided Design SW pro návrh výrobků a jejich součást (AutoCAD, MicroStation, ...)
CAM - Computer Aided Manufacturing SW pro řízení výrobních linek a strojů
CIM - Computer Integrated Manufacturing SW pro propojení procesu vývoje výrobku a logistiky v průmyslovém závodě