460-2009/04 – Úvod do softwarového inženýrství (SWI)

Garantující katedraKatedra informatikyKredity4
Garant předmětuIng. Svatopluk Štolfa, Ph.D.Garant verze předmětuIng. Svatopluk Štolfa, Ph.D.
Úroveň studiapregraduální nebo graduálníPovinnostpovinný
Ročník2Semestrletní
Jazyk výukyčeština
Rok zavedení2019/2020Rok zrušení
Určeno pro fakultyFEIUrčeno pro typy studiabakalářské
Výuku zajišťuje
Os. čís.JménoCvičícíPřednášející
PLU042 Ing. Jan Plucar, Ph.D.
REV010 Ing. Lukáš Révay
STO03 Ing. Svatopluk Štolfa, Ph.D.
VUJ0008 Bc. Ing. Adam Vůjtek
Rozsah výuky pro formy studia
Forma studiaZp.zak.Rozsah
prezenční Zápočet a zkouška 2+2
kombinovaná Zápočet a zkouška 10+10

Cíle předmětu vyjádřené dosaženými dovednostmi a kompetencemi

Cílem předmětu je uvést studenty do disciplíny zabývající se problematikou vývoje rozsáhlých softwarových systémů. Předmět se zabývá problematikou tvorby požadavků na softwarový systém, jejich analýzou, tvorbou architektury a designu produktu. To vše za využití standardních postupů, nástrojů a jazyků jako je UML, sledování provázání jednotivých kroků apod. Studenti budou schopni aplikovat dané postupy a metody při tvorbě softwarových produktů, použít nástroje specifikace požadavků, použít jazyk UML a umět definovat potřebu koordinovaného vývoje software.

Vyučovací metody

Přednášky
Cvičení (v učebně)
Projekt

Anotace

Tento předmět je úvodem do problematiky tvorby software z hlediska inženýrských metod. Objektově orientovaný přístup a jazyk UML je použit jako základ prezentovaných metod.

Povinná literatura:

Pfleeger, Shari Lawrence, and Joanne M. Atlee. 2009. Software Engineering: Theory and Practice: Prentice Hall, ISBN 0136061699. Pressman, Roger S. 2010. Software Engineering : A Practitioner's Approach. 7th ed. New York: McGraw-Hill Higher Education, ISBN 9780073375977. Sommerville, Ian. 2010. Software Engineering. 9th ed, International Computer Science Series. Harlow: Addison-Wesley, ISBN 978-0137035151.

Doporučená literatura:

Watts Humphrey’s Introduction to the Team Software Process Armando Fox and David Patterson ,Engineering Software as a Service: An Agile Approach Using Cloud Computing, Strawberry Canyon Publisher, 2013 Gary McGraw, Real Time UML, Third Edition. Bruce Powel Douglass, Advances in the UML for Real-Time Systems, Addison-Wesley, 2004.

Forma způsobu ověření studijních výsledků a další požadavky na studenta

Bodované testy na cvičeních a písemné a ústní ověření znalostí zkouškou.

E-learning

Další požadavky na studenta

Student by měl znát základní principy programování.

Prerekvizity

Předmět nemá žádné prerekvizity.

Korekvizity

Předmět nemá žádné korekvizity.

Osnova předmětu

Přednášky: 1. Softwarové procesy – životní cyklus software, Waterfall, V-Model, UP 2. Softwarové procesy - agilní metody, softwarová kvalita 3. Nástroje a prostředí – konfigurační management 4. Nástroje a prostředí – verzovací systémy, výběr nástroje a použití 5. Specifikace a analýza požadavků – získávání požadavků, funkční a nefunční požadavky 6. Specifikace a analýza požadavků - Případy užití a uživatelské příběhy 7. Softwarový design – návrhové principy 8. Softwarový design – softwarové architektury 9. Softwarový design – Návrhové vzory 10. Softwarová konstrukce – kódovací standardy, implementace spolehlivosti, efektivity a robustnosti 11. Softwarová konstrukce - Integrační strategie: top-down, bottom-up, sandwich 12. Verifikace a validace software – Verifikace vs. Validace, Testovací úrovně a typy: kvalifikační testy, integrační testy, unit testy, statické testy 13. Verifikace a validace software - test plán, testovací metody, verifikace a validace nekódpvých artefaktů, regresní testy 14. Závěr a konsolidace Předmět je vyučován jako blok přednášek a cvičení s časovou dotací 1,5 hodiny na přednášku a 1,5 hodiny na cvičení. Kurz je zaměřen na praktickou aplikaci získaných znalostí na vlastním vybraném příkladě. Je procvičován vývojový cyklus software za pomocí mimo jiné vizuálního modelování pomocí jazyka UML. Náplň cvičení Cvičení jsou zaměřena na seznámení se s vývojovým cyklem softwarového díla a specifikaci jednotlivých částí. Náplní cvičení je postupně procházet jednotlivé fáze vývoje software a postupně se seznamovat s různými diagramy jazyka UML. Cvičení jsou pak dále zaměřena na konzultace spojené se samostatným zpracováním softwarového projektu, jeho výslednou implementací. Vypracování projektu a splnění testů na cvičeních jsou požadovány jako nutná podmínka pro udělení zápočtu. Obsah jednotlivých cvičení: 1. Analýza problému, slovní specifikace požadavků, strukturovaná specifikace požadavků. Procvičení na příkladech. 2. Tvorba případů užití, scénáře, user stories, seznámení se s diagramem případů užití, vazby include a extend. Procvičení na příkladech. 3. Diagram případů užití, vazby dědičnost mezi aktéry, dědičnost mezi případy užití. Procvičení na příkladech. 4. Identifikace entit v systému - analýza podstatných jmen v případech užití. Základy třídního diagramu. Třída, vazby asociace, multiplicita. Způsob převodu diagramu do programovacího jazyka. Procvičení na příkladech. 5. Sestavení strukturálního náhledu na systém. Třídní diagram – vazba dědičnosti, implementace rozhraní, role, rozhraní, agregace a kompozice, asociační třída. Způsob převodu diagramu do programovacího jazyka. Procvičení na příkladech. 6. Realizace případů užití – sekvenční diagramy. Seznámení se se základy – objekt, volání objektu, návratová zpráva. Procvičení na příkladech. 7. Sekvenční diagramy – alternativy, smyčky, synchronní a asynchronní volání, doba běhu operace. Způsob převodu diagramu do programovacího jazyka. Procvičení na příkladech. 8. Komunikační diagramy. Upřesnění třídních diagramů na základě sekvenčních diagramů a komunikačních diagramů. Procvičení na příkladech. 9. Stavové diagramy – změny stavů, způsob realizace v programovacích jazycích. Procvičení na příkladech. 10. Diagramy aktivit a jejich využití pro definici problému – byznys model. Procvičení na příkladech. 11. Využití diagramu aktivit pro popis případů užití, algoritmů v systému. Procvičení na příkladech. 12. Implementace softwarového díla na základě vytvořené analýzy – diagramy balíčků a nasazení. Procvičení na příkladech. 13. Rekapitulace cvičení – postup v jednotlivých fázích projektu, využití diagramů UML. 14. Kontrola projektů. Náplň projektu Praktické procvičení jednotlivých fází vývojového cyklu probíraného na přednáškách na vlastním konkrétním kontinuálním příkladě s dotažením do implementační části.

Podmínky absolvování předmětu

Prezenční forma (platnost od: 2019/2020 zimní semestr)
Název úlohyTyp úlohyMax. počet bodů
(akt. za podúlohy)
Min. počet bodů
Zápočet a zkouška Zápočet a zkouška 100 (100) 51
        Zápočet Zápočet 40  20
        Zkouška Zkouška 60 (60) 30
                Písemná zkouška Písemná zkouška 60  30
                Ústní zkouška Ústní zkouška  
Rozsah povinné účasti: Plnění bodovaných úkolů na cvičeních a písemné a ústní ověření znalostí zkouškou.

Zobrazit historii

Výskyt ve studijních plánech

Akademický rokProgramObor/spec.Spec.ZaměřeníFormaJazyk výuky Konz. stř.RočníkZLTyp povinnosti
2020/2021 (B0714A150003) Počítačové systémy pro průmysl 21. století INF P čeština Ostrava 2 povinný stu. plán
2020/2021 (B2724XXX0001) Biomedicínské asistivní technologie K čeština Ostrava 2 povinně volitelný typu B stu. plán
2020/2021 (B2724XXX0001) Biomedicínské asistivní technologie P čeština Ostrava 2 povinně volitelný typu B stu. plán
2020/2021 (B0613A140014) Informatika INF K čeština Ostrava 1 povinný stu. plán
2020/2021 (B0613A140014) Informatika INF P čeština Ostrava 1 povinný stu. plán
2020/2021 (B3973) Automobilové elektronické systémy P čeština Ostrava 3 povinný stu. plán
2019/2020 (B0714A150003) Počítačové systémy pro průmysl 21. století INF P čeština Ostrava 2 povinný stu. plán
2019/2020 (B3973) Automobilové elektronické systémy P čeština Ostrava 3 povinný stu. plán
2019/2020 (B0541A170008) Výpočetní a aplikovaná matematika P čeština Ostrava 1 volitelný odborný stu. plán
2019/2020 (B0541A170008) Výpočetní a aplikovaná matematika K čeština Ostrava 1 volitelný odborný stu. plán
2019/2020 (B0613A140014) Informatika INF P čeština Ostrava 1 povinný stu. plán
2019/2020 (B0613A140014) Informatika INF K čeština Ostrava 1 povinný stu. plán

Výskyt ve speciálních blocích

Název blokuAkademický rokForma studiaJazyk výuky RočníkZLTyp blokuVlastník bloku