| Název: | Praktické aspekty vývoje software |
|---|
| Zkratka: | IVS |
|---|
| Ak.rok: | 2010/2011 |
|---|
| Semestr: | letní |
|---|
| Studijní plán: | |
|---|
| Vyučovací jazyk: | čeština |
|---|
| Informace veřejné: | http://www.fit.vutbr.cz/study/courses/IVS/public/ |
|---|
| Kredity: | 5 kreditů |
|---|
| Ukončení: | klasifikovaný zápočet |
|---|
| Výuka: | | hod./sem | přednáška | sem./cvičení | lab. cvičení | poč. cvičení | jiná |
|---|
| Rozsah: | 26 | 0 | 0 | 0 | 26 |
|---|
| | zkouška | testy | cvičení | laboratoře | ostatní |
|---|
| Body: | 0 | 30 | 0 | 0 | 70 |
|---|
|
|---|
| Garant: | Smrž Pavel, doc. RNDr., Ph.D., UPGM |
|---|
| Přednášející: | Dytrych Jaroslav, Ing., UPGM Otrusina Lubomír, Ing., UPGM Smrž Pavel, doc. RNDr., Ph.D., UPGM |
| Cvičící: | Dytrych Jaroslav, Ing., UPGM Mrnuštík Michal, Ing., UPGM Otrusina Lubomír, Ing., UPGM Polok Lukáš, Ing., UPGM Schmidt Marek, Ing., UPGM Šperka Svatopluk, Ing., UPGM |
|---|
| Fakulta: | Fakulta informačních technologií VUT v Brně |
|---|
| Pracoviště: | Ústav počítačové grafiky a multimédií FIT VUT v Brně |
|---|
| Prerekvizity: | |
|---|
| | | Cíle předmětu: |
|---|
Poznat praktické aspekty vývoje programového vybavení v týmu, porozumět principům aplikací, které usnadňují vytváření a dokumentování projektů skládajících se z komponent, seznámit se možnostmi snadného prototypování grafických uživatelských rozhraní, pochopit předpoklady vzniku úspěšného svobodného software a měření upotřebitelnosti. | | Anotace: |
|---|
Základní koncepty použití unixové filosofie při vlastním programování, role testování kódu a vývoj řízený testy, vytváření komponentově orientovaného kódu, odhalování výkonnostních problémů, distribuovaná správa verzí, možnosti paralelizace výpočtů, zpracování velkých objemů dat, praktické zkušenosti vývojářů z firem. | | Získané dovednosti, znalosti a kompetence z předmětu: |
|---|
Studenti se seznámí s moderními přístupy k vývoji software, po úspěšné zvládnutí předmětu se budou lépe schopni začlenit do týmů pracujících nad společným kódem, budou moci demonstrovat znalosti nástrojů usnadňujících vznik výkonného a správně dokumentovaného kódu, stejně jako aplikací, které budou odpovídat potřebám koncových uživatelů. | | Dovednosti, znalosti a kompetence obecné: |
|---|
Studenti se naučí řešit projekty. Zdokonalí se v praktickém užívání programátorských nástrojů, které se používají v reálném prostředí softwarových týmů. | | Osnova přednášek: |
|---|
- Úvod, motivace, základní pojmy, organizace předmětu
- Praktická aplikace unixové filosofie při programování
- Role testů při vývoji software
- Odhalování chyb, profiling, debugging
- Identifikace existujících komponent, využívání knihoven dostupných na různých platformách, programy pro sestavování jako samodokumentující prostředí
- Generování programové dokumentace z kódu
- Systémy pro distribuovanou správu verzí, GIT
- Návrh uživatelských rozhraní, zážitky uživatelů
- Měření upotřebitelnosti
- Urychlování výpočtů, možnosti paralelizace
- Využívání alternativních paradigmat programování
- Přednáška pozvaných expertů z firemní praxe
- Prezentace výsledků projektů
| | Osnova ostatní - projekty, práce: |
|---|
- Definice testů (20 bodů)
- Identifikace výkonnostních problémů (15 bodů)
- Vytváření maket (20 bodů)
- Kód gramotného programátora - "literate programming" (15 bodů)
| | Průběžná kontrola studia: |
|---|
- Půlsemestrální písemný test (30 bodů)
- Projekty (celkem 70 bodů)
| | Podmínky zápočtu: |
|---|
Získání alespoň 50 bodů. | | |
|