Detail předmětu

Úvod do softwarového inženýrství

FIT-IUSAk. rok: 2014/2015

Pojmy softwarové inženýrství a softwarová krize, historie a cíle sofwarového inženýrství, vlastnosti softwarového produktu. Životní cyklus a etapy vývoje softwaru, charakteristika používaných metodik. Analýza a specifikace požadavků, zachycení požadavků v diagramu případů užití. Princip a modelovací techniky strukturované analýzy a návrhu (DFD, ERD). Základy objektové orientace (objekt, třída, abstrakce, zapouzdření, dědičnost, polymorfismus). Modelovací techniky objektově orientované analýzy a návrhu (diagram tříd, diagram objektů, návrhové vzory). UML v etapách vývoje softwaru (diagramy spolupráce, sekvenční diagramy, diagramy aktivit, stavové diagramy, OCL). Implementace, validace a verifikace programů (funkcionální a strukturální testování). Agilní metodiky pro tvorbu softwaru. Problematika provozu a servisu informačních systémů. Řízení softwarových projektů, normy pro zajištění kvality, ochrana intelektuálního vlastnictví, etický kodex softwarového inženýra.

Jazyk výuky

čeština

Počet kreditů

5

Výsledky učení předmětu

Student získá přehled v oblasti tvorby rozsáhlých softwarových systémů. Student se seznámí zejména s etapami vývoje softwaru a modely životního cyklu softwaru. Porozumí základům metodiky analýzy a specifikace požadavků a návrhu softwarových systémů. Naučí se používat vybrané UML modely. Seznámí se se základy publikování na počítači.

Student se naučí provádět analýzu a návrh softwarových systémů. Naučí se vytvářet projektovou a programovou dokumentaci. Bude rozumět a umět vytvářet základní modely v UML.

Prerekvizity

Předmět je umístěn v zimním semestru prvního ročníku bakalářského studijního programu. U studentů se proto předpokládají pouze běžné znalosti práce s počítačem na úrovni střední školy.

Způsob a kritéria hodnocení

Pro získání zápočtu musí student splnit obě následující podmínky:
  • absolvovat e-learningový kurz IVIG, tedy získat alespoň 1 bod z prvního projektu,
  • získat v součtu nejméně 16 bodů ze všech projektů.

Pokud bude odhaleno plagiátorství nebo nedovolená spolupráce na projektech, zápočet nebude udělen a dále bude zváženo zahájení disciplinárního řízení.

Osnovy výuky

    Osnova přednášek:
    1. Historie využívání výpočetní techniky, pojem informační technologie, softwarová krize, softwarové inženýrství, informační společnost.
    2. Vývoj softwaru, softwarový produkt.
    3. Etapy vývoje softwarových systémů, modely životního cyklu softwaru. Analýza a specifikace požadavků (funkční a nefunkční požadavky, validace požadavků, formální specifikace).
    4. Metody specifikace požadavků, modelovací techniky strukturované a objektově orientované analýzy.
    5. Modelovací techniky strukturovaného návrhu.
    6. Modelovací techniky objektově orientovaného návrhu, Unified Modelling Language (UML).
    7. Vybrané modelovací prostředky UML (diagram případů použití, diagram tříd, stavový diagram, diagram aktivit).
    8. Komplexní modelování pomocí UML.
    9. Úloha validace a verifikace při vývoji softwaru.
    10. Implementace, testování a údržba softwaru (znovupoužitelnost, změny požadavků, verzování, reengineering, počítačová podpora).
    11. Agilní metody vývoje softwaru, extrémní programování a prototypování.
    12. Úvod do problematiky řízení softwarových projektů. 
    13. Posuzování kvality software.

    Osnova ostatní - projekty, práce:
    1. E-learningový kurz (10 bodů)
    2. Dokumentace k projektu z IZP (10 bodů)
    3. Model informačního systému (20 bodů)

Učební cíle

Získat přehled v oblasti výstavby rozsáhlých softwarových systémů. Seznámit s procesem tvorby softwaru. Proces tvorby softwarového systému se analyzuje jako integrace vývoje systému, zabezpečení kvality softwaru a managementu softwarového projektu. Seznámit s etapami životního cyklu softwaru. Pozornost se věnuje všem etapám, zejména analýze a specifikaci požadavků a metodám návrhu softwaru. Naučit se používat základní modely UML a osvojit si metodiku modelování v UML.

Vymezení kontrolované výuky a způsob jejího provádění a formy nahrazování zameškané výuky

Účast na přednáškách v tomto předmětu není kontrolována. Znalosti studujících jsou ověřovány vypracováním projektů a závěrečnou zkouškou. Pro získání bodů ze zkoušky je nutné zkoušku vypracovat tak, aby byla hodnocena nejméně 24 body. V opačném případě bude zkouška hodnocena 0 body.

Základní literatura

Beck, K. Extrémní programování. Grada, Praha, 2002. ISBN 80-247-0300-9. 
Page-Jones, M. Základy objektově orientovaného návrhu v UML. Grada, Praha, 2001. ISBN 80-247-0210-X.
Paleta, P. Co programátory ve škole neučí aneb Softwarové inženýrství v reálné praxi. Computer press, 2004. ISBN 80-251-0073-1. 
Pezze, M., Young, M. Software Testing and Analysis: Process, Principles, and Techniques. John Wiley & Sons, 2007. ISBN 978-0-471-45593-6. 
Richta, K., Sochor, J. Softwarové inženýrství I. Vydavatelství ČVUT, Praha 1996 (dotisk 1998). ISBN 80-01-01428-2.

Doporučená literatura

Arlow, J., Neustadt, I.: UML2 a unifikovaný proces vývoje aplikací. Computer Press, Brno, 2007. ISBN 978-80-251-1503-9.
Daoust, N. UML Requirements Modeling For Business Analysts. Technics Publications, 2012. 268 p. ‎ ISBN 978-1935504245.
Objektově orientované modelování systémů - učební text : učební text zaměřený na jazyk UML 2.0. VUT v Brně, 2004.
Kočí, R., Křena, B.: Úvod do softwarového inženýrství. Studijní opora, VUT v Brně, 2010.
Larman, C. Applying UML and Patterns: An Introduction to Object-Oriented Analysis and Design and Iterative Development. 3rd Edition. 736 p. Pearson, 2004. ISBN: 978-0131489066.
Wiegers, K., Beatty, J. Software Requirements. Microsoft Press, 2013. 637 p. ISBN: 978-0735679658.

Zařazení předmětu ve studijních plánech

  • Program IT-BC-3 bakalářský

    obor BIT , 1 ročník, zimní semestr, povinný