Tvorba software

Z MiS
(Rozdíly mezi verzemi)
Přejít na: navigace, hledání
(Kompletní přepracování - fáze 1)
(Doplněn komentář k testování.)
 
(Nejsou zobrazeny 2 mezilehlé verze od 1 uživatele.)
Řádka 23: Řádka 23:
 
Viz také: [[Algoritmus]].
 
Viz také: [[Algoritmus]].
 
-->
 
-->
 +
  
  
Řádka 32: Řádka 33:
 
* Z tohoto popisu vychází analýza, zadání se při ní dále zpřesňuje.
 
* Z tohoto popisu vychází analýza, zadání se při ní dále zpřesňuje.
 
* Formuluje zákazník nebo jiný zadavatel.
 
* Formuluje zákazník nebo jiný zadavatel.
 +
* Požadavky:
 +
** Jednoznačnost popisu.
 +
** Přesný výčet funkcí, které má systém plnit. S jakými dalšími navazujícími systémy má interagovat, jací uživatelé s ním budou pracovat,...
 +
** Ověřitelnost požadavků zadání (!)
  
 
=== Analýza ===
 
=== Analýza ===
Řádka 81: Řádka 86:
 
**Výsledek: Zdrojový kód
 
**Výsledek: Zdrojový kód
 
*Píšeme kód, který realizuje algoritmus.
 
*Píšeme kód, který realizuje algoritmus.
 +
 
=== Nasazení ===
 
=== Nasazení ===
 
* Instalujeme u zákazníka.
 
* Instalujeme u zákazníka.
 
* Zaškolíme obsluhu.
 
* Zaškolíme obsluhu.
 +
 
=== Údržba ===
 
=== Údržba ===
 
*aktualizace
 
*aktualizace
 
*úpravy
 
*úpravy
 +
 
=== Vyřazení z provozu ===
 
=== Vyřazení z provozu ===
 +
* Vytvořený systém je vyřazen z provozu a dále se již nepoužívá.
 +
 +
 +
== Testování ==
 +
* Testování probíhá ve všech fázích počínaje analýzou a poté při každé úpravě.
 +
* V počátečních fázích (analýza, návrh) testujeme soulad jednotlivých částí dokumentace a návaznosti mezi jednotlivými fázemi.
 +
* Ve fázích implementace a údržby už probíhá klasické testování kódu (black-box testy, uživatelské testování,...), ale i zde zároveň testujeme soulad s návrhovou dokumentací a požadavky analýzy, případně aktualizujeme dokumenty vzniklé v předchozích fázích, pokud se mezitím požadavky upravily.
 +
* Testování proto neuvádíme jako samostatnou fázi. Jedná se o souvislý proces, který se prolíná všemi fázemi.
  
  
 
== Profese ==
 
== Profese ==
*Informatik
+
* Ne v každém týmu se vyskytují všechny role.
**vědec
+
* Některé role může zastřešovat jedna osoba.
**zabývá se algoritmy (například: řadícími algoritmy,...)
+
* Názvy a konkrétní náplň práce rolí se v jednotlivých firmách může lišit.
**převody algoritmů, vztahy mezi nimi
+
 
**složitost algoritmů,...
+
* Každý se může svými vlastnostmi více hodit do některých rolí a pro některé může mít předpokladů méně.
*Softwarový inženýr (vývojář) ~ analytik
+
 
** Provádí analýzu úlohy.
+
=== Informatika jako věda ===
** Komunikuje se zákazníkem.
+
; Informatik
** Řídí spolupráci v týmu
+
*vědec
*Kodér ~ programátor
+
*zabývá se algoritmy (například: řadícími algoritmy,...)
**aplikuje obecné algoritmy na konkrétní úlohu
+
*převody algoritmů, vztahy mezi nimi
**zapisuje v programovacím jazyce  
+
*složitost algoritmů,...
*Tester
+
* Dále dělíme na:
** Po '''celou''' dobu projektu ověřuje správnost vytvořených materiálů.
+
** Základní výzkum: snaží se objevit souvislosti mezi jevy, prozkoumat pravidla.
 +
** Aplikovaný výzkum: aplikuje nejnovější vědecké poznatky na praktické úlohy s využitím v průmyslu a firmách.
 +
 
 +
=== Programování a věci úzce související ===
 +
;Softwarový inženýr (vývojář) ~ analytik
 +
* Provádí analýzu úlohy.
 +
* Komunikuje se zákazníkem.
 +
* Řídí spolupráci v týmu
 +
 
 +
; Kodér ~ programátor
 +
* aplikuje obecné algoritmy na konkrétní úlohu
 +
* zapisuje v programovacím jazyce  
 +
 
 +
=== Další role v  týmu ===
 +
; Tester
 +
* Po '''celou''' dobu projektu ověřuje správnost vytvořených materiálů.
 +
 
 +
; Projektový manažer
 +
* Dohlíží na činnost týmu, kontroluje termíny.
 +
* Komunikuje se zákazníkem a předává požadavky týmu.
 +
 
 +
; UX specialista
 +
* Navrhuje uživatelské rozhraní projektu tak, aby bylo uživatelsky přívětivé.
 +
 
 +
; Grafik
 +
* Vytváří vizuální podobu produktu.
 +
 
 +
; Kreativec
 +
* Přináší nové pohledy na věc. Jeho úkolem primárně není řešit technické provedení.
  
  

Aktuální verze z 18. 12. 2024, 08:36



Obsah

Fáze projektu

Formulace slovního zadání

Analýza

Charakteristika
Řešíme
Testujeme

V rámci analýzy řešíme věci a akce z reálného světa, tomu odpovídá i terminologie. Minimálně používáme specializované pojmy ze světa IT, výstupům by měl rozumět i zákazník.

Zatím se NEbavíme o:

  • softwarovém či hardwarovém způsobu řešení,
  • algoritmech,
  • způsobu ukládání dat,...

Návrh

Implementace

Nasazení

Údržba

Vyřazení z provozu


Testování


Profese

Informatika jako věda

Informatik

Programování a věci úzce související

Softwarový inženýr (vývojář) ~ analytik
Kodér ~ programátor

Další role v  týmu

Tester
Projektový manažer
UX specialista
Grafik
Kreativec


Proč začínat na papíře/obrázku?


Pojmy

Osobní nástroje
Jmenné prostory
Varianty
Akce
Výuka
Navigace
Nástroje