Semestrální práce ke kurzu 4IT421 Zlepšování procesů budování IS
|
|
- Viktor Šmíd
- před 6 lety
- Počet zobrazení:
Transkript
1 Semestrální práce ke kurzu 4IT421 Zlepšování procesů budování IS Semestr LS 2016/2017 Autoři - jméno, příjmení, xname Téma Bc. Andrea Havlíčková, Bc. Jan Štěpán, Bc. Lukáš Pajma xhava23, xstej110, xpajl02 Teaching Modern Software Development Techniques at University Datum odevzdání :59 Abstrakt Semestrální práce se věnuje tématu výuky technik moderního vývoje softwaru na vysokých školách a univerzitách. Obsahem práce jsou metodiky používané při vývoji softwaru aplikované na zahraniční i tuzemský model výuky, která se zabývá vývojem softwaru a následné aplikace Klíčová slova Moderní vývoj softwaru, software, vývoj softwaru, výuka, univerzita, výuka moderního vývoje softwaru, techniky moderního vývoje softwaru, 1
2 Obsah Úvod... 3 Kapitoly Porovnání metodik moderního vývoje softwaru Rigorózní metodiky Metodika Rational Unified Process (RUP) Agilní metodiky Metodika Scrum Metodika Extreme Programming (XP) Kanban Test Driven Development (Refactoring) Rigorózní metodiky vs Agilní metodiky Zahraniční model výuky moderního vývoje softwaru První ročník Druhý ročník Třetí ročník Čtvrtý ročník Moderní vývoj softwaru na VŠE v Praze Představení kurzů Kurz Programování v Javě Kurz Softwarové inženýrství Aplikace pro předměty na VŠE v Praze Zvané přednášky externistů z praxe Rozšířená výuka programovacích jazyků využitelných při implementaci řešení ERP a BI Využití metodik v praxi a organizované řízení týmů Založení klubu programátorů Založení dev fóra Grow shopping Přednášky pro rozvoj komunikace, vystupování, vyjednávání Závěr Literatura
3 Úvod V dnešní době se mnoho z nás, studentů, střetává na vysokých školách v oblasti výpočetní techniky s pojmem moderní vývoj softwaru. Po absolvování studia na vysoké škole v oblasti výpočetní techniky se většina absolventů vydá právě tímto směrem. Problém však nastává v době, kdy po ukončení studia u absolventů převládají spíše teoretické znalosti nad praktickými zkušenostmi. Příčinou této problematiky, tj. výuky moderního vývoje softwaru na vysokých školách a jejím řešením se bude zabývat tato seminární práce. Hlavním cílem práce je představit techniky vývoje v oblasti současného vývoje softwaru dostupné ze zahraničního modelu vytvořeného na základě této problematiky a u vybraných technik navrhnout jejich aplikaci v prostředí Vysoké školy ekonomické v Praze. Autoři na základě článku od profesora Roberta Chatleyho na škole Imperial College v Londýně se nejdříve budou věnovat metodikám, které jsou během vyučování moderního vývoje softwaru na škole využívány, dále představí model, který na univerzitě využívají k výuce moderního vývoje softwaru a který má napomoci studentům již během studia získat znalosti, které mohou využívat v praxi, právě tím, že z reálných případů vycházejí. Následně se práce bude zabývat představením kurzů ze zmiňovaného oboru, které jsou nabízeny na univerzitě, na které autoři studují. V závěru práce bude pro kurzy týkající se moderního vývoje softwaru, které autoři absolvovali během bakalářského a magisterského studia jako povinné sestrojen návrh na jejich optimalizaci. Kapitoly 1 Porovnání metodik moderního vývoje softwaru Metodiky vývoje softwaru neboli metodologie vývoje softwaru v softwarovém inženýrství, je souhrn postupů, pravidel či nástrojů. Metodikou se také rozumí aplikační rámec, tzv. framework, který se používá ke strukturování, plánování a řízení procesu vývoje informačního systému. Metodik pro vývoj procesů je mnoho a nejsou jednotně popsány. Proto je obtížné je vyhledávat, vzájemně porovnávat a zvolit nejvíce vhodnou metodiku. Mezi další nevýhody patří dostupnost několika metodik pouze v anglickém jazyce, či problém rigorózních metodik nevyhovující požadavkům současných projektů. Pro lepší pochopení a orientaci velkého množství různých metodik se metodiky řadí alespoň do kategorií podle: zaměření - globální a projektové metodiky rozsahu - fáze - role - dimenze váhy - velikost metodiky x hustota metodiky typu řešení - vývoj nového řešení, úprava stávajícího řešení, integrace řešení, implementace typového řešení, atd. 3
4 domény - ERP, CRM, SCM, atd. přístupu řešení - strukturovaný, objektové orientovaný, RAD V této práci se budeme zabývat metodikami, které spadají do kategorie podle členění váhy metodiky, tj. agilní a rigorózní metodiky 1.1 Rigorózní metodiky Rigorózní metodiky řadíme podle kritéria podrobností metodik či váhy metodik do kategorie obtížných metodik. Rigorózní metodiky jsou těžké metodiky, které jsou vysoce podrobné, obsahují hodně formalit a mají direktviní řízení. Předpokládají možnosti nadefinovat si všechny požadavky na řešení předem a také zaručují opakovatelnost procesů. Příkladem je například metodiky Rational Unified Process (RUP). Rigorózní metodiky však pro mnohé dnešní projekty nevyhovují. Jsou velmi náročné, čímž způsobují velké množství meziproduktů a hrozí ztráta cíle vývoje softwaru. Dalším problémem rigorózních metodik je tzv. standardizace lidí, kdy narozdíl od agilních metodik nevyužívají individualit lidí, ani nesdílejí znalosti řešení v týmu, to znamená, že čím více větší projekt, tím více specialistů je potřeba najmout. Pro představu fungování rigorózních metodik je příklad, jenž je postaven na nedůvěře zákazníků a vývojářů. Nedůvěra ve vykonání správné práce směřuje k neustálé kontrole a sledování Metodika Rational Unified Process (RUP) Rational Unified Process, dále jen RUP, je softwarový inženýrský proces, který představuje disciplinovaný přístup přiřazující úkoly a odpovědnosti v organizaci zabývající se vývojem softwaru. Metodika RUP byla původně vytvořena společností Rational Software Corporation, avšak jako samostatná divize náleží od roku 2003 firmě IBM. RUP se snaží zachytit mnoho moderních postupů moderního vývoje softwaru, najít nejlepší praktiky vhodné pro širokou škálu projektů a organizací. RUP obsahuje celkem čtyři základní fáze: Zahájení (Inception) Příprava (Elaboration) Konstrukce (Construction) Předávání (Transition) Každá fáze obsahuje několik dalších iterací. Před započetím nové iterace musí být splněna dříve definovaná kritéria předchozí iterace. Fáze zahájení (inception) definuje účel, rozsah projektu a jeho obchodní kontext. Ve fázi projektování (elaboration) je potřeba analyzovat požadavky zákazníka, celého projektu a definovat základy architektury. Realizační fáze (construction) je nejdelší probíhá zde tvorba zdrojových kódů. V poslední fázi předání (transition) může být projekt předán zákazníkovi nebo do dalšího cyklu. (Buchalcevová, 2009) Nejlepší praktiky a postupy při vývoji softwaru: Iterativní vývoj Aktivní správa požadavků 4
5 Architektura založená na komponentách Vizuální modelování Ověřování kvality software Řízení změn software 1.2 Agilní metodiky Agilní metodiky podle kritéria váhy metodiky spadají na rozdíl od rigorózních metodik do kategorie lehké metodiky. U agilních metodik jsou lidé prvořadým faktorem, je zde kladen důraz na týmovou práci a jejich individuální schopnosti. Agilní metodiky se zaměřují na iterativní vývoj s velmi krátkými iteracemi a také na fungující software, který je hodnotný pro zákazníka. Komunikace se zákazníkem je důležitým faktorem. Proto jsou agilní metodiky tolerantní ke změnám, tj. vytvářejí software, který je ochoten v budoucnosti akceptovat a reagovat na změny, které si zákazník vyžádá. Dalším kladem je agilních metodik je automatizované testování. Příkladem agilních metodik jsou metodiky SCRUM, Extreme Programming a Kanban Metodika Scrum Metodika Scrum patří mezi nejpoužívanější agilní metodiky. Zaměřuje se hlavně na řízení projektu, kde hrozí riziko, kdy zákazníci mění během projektu názor na svůj původní cíl, tj. mění názor o tom, co chtějí a potřebují. Cílem metodiky Scrum je tedy rychle reagovat na nové požadavky zákazníků. Metodika Scrum má vždy určený tým, který se skládá ze tří rolí: role Product Owner (spravuje seznam požadavků), vývojový tým (skupina lidí s různou specializací, kteří mají za cíl včas dodat správně fungující software, či splnit jim určený požadavek) a Scrum Master (zodpovídá za metodiku, její správnou implementaci a maximalizaci užitku). Důležitou součástí Scrumu jsou tzv. Eventy neboli události. Hlavní událostí Scrumu je Sprint. Sprint neboli iterace je základní jednotka vývoje ve Scrumu. Sprint je vždy omezen na specifickou časovou dobu, obvykle jeden týden až měsíc. Doba Sprintu je vždy určena dopředu. Hlavním cílem sprintu je definovat jeho úkoly, tj, kde je přesně definována práce sprintu a jeho závazky. Každý Sprint končí tzv. Sprint Review, tj. recenzí či zpětnou vazbou o jeho průběhu. (Buchalcevová, 2009) Metodika Extreme Programming (XP) Metodika extrémního programování vznikla počátkem 90. let minulého století ve skupině Kenta Becka, Warda Cunninghama a Rona Jeffriese. Metodika extrémního programování je vhodná pro malé až střední týmy, kde je zhruba od dvou do desíti programátorů. Vhodná je také pro rychle se měnící požadavky či nejasné požadavky zákazníků na vývoj softwaru. Díky této metodice je software v budoucnosti schopen akceptovat změny požadavků a dodává tak softwaru vysokou kvalitu. Mezi principy extrémního programování patří například neustálé testování (testování před změnou kódu, po změně kódu a v průběhu vývoje). Pokud jsou osvědčeny krátké iterace, pak v extrémním programování jsou iterace zkráceny na minuty, hodiny či dny místo týdnů, měsíců či roků. (Buchalcevová, 2009) Základní principy extrémního programování: Komunikace 5
6 Jednoduchost Zpětná vazba Odvaha Pravidla postupu vývoje extrémního programování: Zadání Plánování Design Programování Testování Dodávka a akceptace Kanban Kanban nelze přímo považovat za metodiku, jedná se spíše o nástroj pro zefektivnění procesu a je úzce spjat s Lean Managementem. Kanban narozdíl od metodiky Scrum neobsahuje tolik pravidel a všechno si víceméně můžeme zvolit sami. U Kanbanu však je potřeba dodržovat aspon tři základní principy, kterými jsou work in progress (omezení rozpracované práce), lead time (dodací lhůta) a progress visualization (vizuallizace progresu). Aplikováno na vývoji software, jedná se o vytvoření přehledné tabule, kde si označíme tři oblasti - backlog (nevyřízené), in progress (v progresu) a done (vyřízené). Práci omezíme, tj. omezíme oblast na počet lístečků s úkoly. Pokud už jsme omezeni přidáním lístečků s úkoly, nezbývá nám nic jiného než dané úkoly v dané oblasti vyřešit či posunout dál. Nástroj Kanban však dokáže být i více propracován, avšak nejlepší je jej využívat spolu s metodikou Extremního programování nebo metodou Scrum. (Bruckner, Buchalcevová, 2012) Test Driven Development (Refactoring) Metodika Test Driven Development byla od roku 1999 součástí agilní metodiky Extrémního programování, avšak v roce 2003 se od tradičních metodik TDD metodika odtrhla a je přisuzována autorovi Kentu Beckovi. Metodika Test Driven Development neboli Programování řízené testy, je přístup k vývoji softwaru, který je založen na malých, ale stále se opakujících krocích, jenž vedou ke zefektivnění celého vývoje. TDD na rozdíl od tradičních metodik využívá přístupu Test-First, který vytváří testy dříve než existuje dostatek kódu, který by testy prošel. Tradiční metodiky využívají přístupu Test-Last, kdy nejprve předpokládají existenci kódu, a teprve poté kód testují a následně kontrolují. TDD však přístup Test-First nevyužívá pro sebekontrolu, ale využívá ho jako nástroj pro návrh systému. Metodika TDD vyžaduje psaní automatických unit testů. Unit testy jsou testy, které testují nejmenší jednotku programu. kterou může být třída v objektově orientovaném programování, funkce nebo metoda. Pro svoji složitost však bývají spíše náplní vývojářů. Test Driven Development má svůj vývojový cyklus, který obsahuje tyto fáze (viz obrázek): 6
7 Napsat test - Testy mohou být napsány podle use-case diagramů, user-stories, či jiných materiálů. Napsání testu slouží k ujištění, že vývojář pomocí ověřování kódu chápe správně funkcionalitu a požadavky na testovanou komponentu, čímž zabrání a eliminuje odchýlení se od původního cíle Spustit testy a kontrola, že neprojdou - Všechny testy v testu nesmí projít. Tato část cyklu slouží k sebekontrole, kdy si vývojář ověří, že neexistuje žádná nová funkcionalita dříve než implementace. Projití testů pak znamená, že jsou špatně napsané. Napsat vlastní kód - Cílem napsání vlastního kódu je úspěšné splnění testů Kontrola kódu - Kontroluje se, zda kód plní definované požadavky Refaktorace - Refaktorace je posledním krokem vývojového cyklu TDD. Zde je předmětem elegance a efektivnost napsaného kódu, tj. odstraňují se duplicity a kód se co nejefektivněji upravuje. Opakování - opakování vývojového cyklu slouží k ověření funkcionality testů Přínosem TDD je možnost opětovného spouštění velkého množství automatických testů, které kontrolou a neustálým ověřováním předem definovaných požadavků a funkcionalit, odhalují možné chyby. Omezením TDD je výskyt chyb v testech nebo kódu, které naléhají na jejich opravu. Při velkém výskytu chyb však může docházet k demotivaci a neschopnosti chyby napravit. Dalším omezením TDD je také špatná testovatelnost určitých částí programů, jako například uživatelského rozhraní. Nelze zde zapisovat akceptační protokoly, které jsou nutné pro vypuštění programu. (Buchalcevová, 2009; Bruckner, 2012) TDD vs ATDD Metodika Test Driven Development obsahuje dvě úrovně, kterými jsou: Developer Test Driven Development a Acceptance Test Driven Development. 7
8 Acceptance Test Driven Development ATDD Acceptance Driven Development neboli akceptační programování řízené testy je úroveň metodiky TDD nebo také nástroj, sloužící ke komunikaci mezi zákazníkem, vývojářem a testerem a zajišťuje správné a podrobné nadefinování požadavků.z testů ATDD jsou často odvozovány TDD testy. Rozdílem testů ATDD a TDD je v tom, že testy ATDD musí být čitelné zákazníkem, narozdíl od testů TDD, které naopak být nemusí. Developer Test Driven Development TDD Developer Driven Development neboli z názvu vyplývající vývojářské programování řízené testy je zaměřeno na vývojářský cyklus. Obrázek níže poukazuje na způsob, jak spolu ATDD a TDD do sebe vzájemně zapadají. 8
9 1.3 Rigorózní metodiky vs Agilní metodiky Rigorózní a agilní metodiky jsou od sebe velice odlišné, například v samotném chápání procesu vývoje softwaru. Předpokladem rigorózních metodik jsou procesy softwaru, které lze popsat a požadavky, které je možné definovat předem, zatímco u agilních metodik je možné předem definovat pouze hrubé požadavky a softwarové procesy popsat nelze. Obsahem rigorózních metodik jsou přesně definované procesy, činnosti a artefakty, narozdíl od agilních metodik, kde obsahem jsou jen generativní pravidla, praktiky a principy. Rigorózní metodiky se používají pro standardní projekty a velké projekty. Agilní metodiky se používají především pro výzkumné projekty, time-to-market a menší týmy. (Buchalcevová, 2009) 2 Zahraniční model výuky moderního vývoje softwaru Na zahraniční škole Imperial College v Londýně je moderní vývoj softwaru vyučován ve čtyřech ročnících. Nový model výuky této oblasti zaváděli právě z důvodu nedostatečné možnosti integrace vystudovaných programátorů v praxi. Jedná se o tříletý nebo čtyřletý program s názvem Computing, kde studenti mají možnost získat dva druhy vysokoškolského titulu (bakalářský nebo magisterský). Oba programy se prolínají během studentských let, program na čtyři roky je však obohacen o půlroční pracovní stáž ve vybrané softwarové společnosti. Studenti vedle dalších předmětů jako matematiky, logiky nebo operačních systémů se věnují také softwarovému inženýrství, které na škole mají po celé čtyři roky a je obsahem různých předmětů(chatley, 2017) 2.1 První ročník V prvním ročníku si studenti osvojují základní dovednosti programování v oblasti funkčního objektově orientovaného a systémového programování. Výuka probíhá formou přednášek a následně také integrovanými počítačovými laboratorními cvičeními. Drobný problém může vznikat v odlišné úrovni zkušeností studentů v oblasti programování. Někteří na školu přicházeli s nulovými zkušenostmi, jiní již měli zkušenosti z oblasti programování ze střední školy nebo z jiných soukromých projektů, popř. se naučili programovat doma sami ve svém volném čase. Cílem je obě skupiny studentů motivovat a zároveň ani jednu z nich neznevýhoďnovat, proto se v úvodních kurzech prvního ročníku na Imperial College vyučuje jazyk Haskell, který je povětšinou neznámý pro celou skupinu studentů. (Chatley, 2017) V prvním ročníku jsou vyučovány následující kurzy související s moderním vývojem softwaru: Programování I - vyučuje se v jazyce Haskell, kurz je zaměřený na objektově orientované programování a procedury a syntaxi a sémantiku zvoleného jazyka Programování II - vyučuje se v jazyce Java, kurz se zabývá kontrolami, datovými strukturami,jednoduchými konstrukcemi algoritmů, testováním a odladěním kódu, také abstraktními datovými typy Laboratorní cvičení - praktická cvičení zaměřená na vývoj softwaru v jazycích Haskell, Java, Assembler a C. Výstupem je umět testovat a implementovat algoritmy programů s využitím TDD. 9
10 Architektura - předmět zaměřený na výuku prvků potřebných pro pochopení architektury počítačových systémů, jako např. kódování, normalizace, IEEE standardy, registry, komponenty CPU, programovancí modely atd. Databáze 1 - předmět zaměřený na základy modelování v jazyce SQL spojených s tvorbou relačních databází (Computing, 2017) 2.2 Druhý ročník Druhý rok je zaměřený na návrh a rozvoj větších systémů. Pokračuje se ve výuce programování v běžných jazycích a dále se více rozvíjí dovednosti z oblasti grafiky. Jelikož každá oblast programování softwaru se zaměřuje trochu na jiné postupy vývoje softwaru a jsou při vývoji využívány jak rigorozní tak agilní metodiky, je potřeba také studenty naučit na tyto fakta reagovat. Návrhové vzory se využívají např. u vývoje bezpečnostních systémů, naopak u spotřebitelských webových služeb se během vývoje softwaru volí agilnější přístup s možností pružně reagovat na změny. Studenti pracují na zadaných projektech, během kterých jsou vychováváni k stálé komunikaci a diskuzi na začátku projektu i během celého procesu vývoje softwaru. Studenti jsou vedeni k osvojování si návrhových vzorů a architektonických stylů, ale s každým problémem, který v daném projektu vznikne, dochází také k jeho induviduálnímu řešení. Např. vznikne-li problém v oblasti duplicit, jsou společně se studenty navrhovány možné kompromisy pro jeho řešení. Pro grafickou část projektu je využíváno moderní vývojové prostředí a studenti si tím lépe dokáží pracovat na grafických návrzích, protože se učí kinesteticky a vytvářejí praktická řešení. (Chatley, 2017) Ve druhém ročníku jsou vyučovány následující kurzy související s moderním vývojem softwaru: Softwarové inženýrství (návrhy) - předmět je zaměřený na vývoj softwaru s využitím TDD, refaktoringu, mock objektů a návrhových vzorů Kompilátory - vyučuje se, jak kompilátory fungují, jak je návrh programovacích jazyků jimi ovlivněn, jak je ovlivněna tvorba architektury Úvod do C++ - předmět zaměřený na základy vývoje software v jazyce C++ Laboratorní cvičení II - praktická cvičení zaměřená na vývoj softwaru v jazycích C, Java, Prolog, Maple, LTSA Softwarové inženýrství (algoritmy) - kurz zaměřený na algoritmické mylšení a řešení problémů vznikajících při vývoji softwaru s využitím Komplexní analýzy, Conquer and divide, Dynamického programování a Náhodných algoritmů Úvod do Prologu - předmět zaměřený na základy vývoje software v jazyce Prolog (Computing, 2017) 2.3 Třetí ročník Třetí ročník začíná velkým významným projektem trvajícím po dobu tří měsíců, kde studenti pracují v týmech pěti až šesti členů a zároveň s projektem probíhá také blok přednášek, které jsou studenti povinni absolvovat. Každá skupina řeší jiný typ projektu se zaměřením na vývoj softwaru, který se týká konkrétního problému nebo poskytnutí služby zákazníkovi. Každá skupina má přiděleného klienta, buď je jím člen fakulty nebo partner z praxe, který řídí výrobu softwaru. Cílem této práce je naučit studenty pracovat v týmu a osvojit si proces vývoje softwaru, který takovým způsobem probíhá také v praxi. Dále studenti navštěvují kurz Softwarové inženýrské praxe, kde jsou jim představovány a mohou si zde osvojovat vývojové metody, nástroje, zajištění kvality, techniky 10
11 projektového a produktového řízení. Na Imperial College začali více klást důraz na učení se využití nástrojů a postupů práce, které by mohli dát společně využít jak z hlediska technického kódu, tak z hlediska správy softwaru a zároveň byly využitelné také v obecném projektovém řízení. Tato hlediska jsou poté aplikována ve zmiňovaném skupinovém projektu. (Chatley, 2017) Ve třetím ročníku jsou vyučovány následující kurzy související s moderním vývojem softwaru: Softwarové inženýrství (praxe) - kurz je zaměřený na výuku agilních metodik - extrémní programování, scrum, kanban a další techniky např. vývojové procesy a zajištění kvality, průběžná integrace a kvalitativní a kvantitativní evaluace Informace a teorie kódování - předmět zaměřený na detekci chyb v kódu, lineární a cyklické kódy a reprezentaci informací Verifikace systémů- předmět zaměřený na verifikaci modelů návrhů systému v nástrojích NuSMV model checking toolkit a NCMAS model chcecker Databáze pro pokročilé - kurz rozvíjející znalosti z oblasti databází, konkrétně data minigu, OLAP operátorů, Big data a znalosti v oblasti kódování v jazyce SQL (Computing, 217) 2.4 Čtvrtý ročník Ve čtvrtém ročníku probíhá další kurz nazvaný Softwarové inženýrství pro průmysl. Cílem je ukázat studentům problémy, které vznikají v oblasti průmyslového softwarového inženýringu a řeší je specialisté v praxi. Dále je v kurzu vyučováno, jak efektivně pracovat se starším kódem a jak ho dále využít. Většina softwarových inženýrů totiž v praxi častěji přetváří starý kód a neprogramují nové řešení. Je to běžný postup úspěšně navržené systémy totiž potřebují průběžně aktualizovat, takže je žádoucí, aby programátor byl zvyklý na úpravu kódu. Nejvíce je ve čtvrtém ročníku kladen důraz na rozvoj kritického myšlení studentů rozvoj argumentace. Náplní kurzu je také zadané téma zkoumat na odborných blozích, článcích, příspěvcích a např. veřejně přístupných videokonferencích. Jde o to aby studenti dokázali vyhledávat názory odborníků z praxe. Studenti dále píší krátká týdenní stanoviska na zadané diskuzní téma, které zkoumali v dostupných zdrojích. Do tzv. diskuzní třídy jsou dále vyzýváni odborníci s prosbou o vyjádření k diskuznímu tématu na daný týden. Odborníci do diskuze vnáší zkušenosti, příklady a případové studie, které studenty mají podporovat vnímat více reálné případy než jen strohou teorii. (Chatley, 2017) Ve čtvrtém ročníku jsou vyučovány následující kurzy související s moderním vývojem softwaru: Prezentace a reporting v průmyslu - předmět venující se komunikačním dovednostem v oblasti průmyslového softwaru Software reliability - kurz zaměřený na spolehlivost softwaru, na její verifikaci pomocí automatických nástrojů. Umožní náhled na algoritmy SAT a SMT, vyučován v jazyce C Individuální projekt (MEng) - individuální projekt studenta, s možností seberealizace a s využitím technik naučených během čtyř let na univerzitě (Computing, 2017) 11
12 3 Moderní vývoj softwaru na VŠE v Praze Na Vysoké škole ekonomické v Praze je studentům nabízeno hned několik kurzů zabývajícími se moderním vývojem softwaru. Studenti bakalářského oboru Aplikovaná informatika,si mohou v rámci skupiny povinných předmětů vybrat tyto semestrální kurzy: Programování v Javě - zaměřený na programovací jazyk Java Programování ve Visual Basic - zaměřený na programovací jazyk Visual Basic Softwarové inženýrství - zaměřený na programovací jazyk Java V rámci oborově volitelných předmětů si mohou vybrat kurzy: Webové aplikace - zaměřený na jazyk PHP. Klient/ server aplikace v Javě - zaměřený na rozšiřování znalostí v jazyce Java Moderní programovací techniky - zaměřený na rozšíření znalostí v jazyce Java, např. serializace, parametrické datové typy, regulární výrazy a návrhové vzory Základy testování SW aplikací V magisterském navazujícím programu na Fakultě informatiky a statistiky jsou studentům na některých oborech nabízeny tyto předměty zabývající se moderním vývojem softwaru: Agilní vývoj webových aplikací - zaměřený na návrh a vývoj moderních webových aplikacích v jazycích PHP a Javascript Pro porovnání výuky moderního vývoje softwaru použijeme kurzy, jež autoři úspěšně absolvovali v rámci bakalářského studia jako povinné, a které tedy osobně znají, konkrétně se jedná o kurz Programování v Javě (dříve Základy programování) a Softwarové inženýrství. (java.vse.cz, 2017; VŠE, 2017) 3.1 Představení kurzů Oba semestrální kurzy jsou rozděleny na dva devadesátiminutové úseky a na část přednášek, kde se studenti seznamují s teoretickou částí základů moderního vývoje softwaru a na část praktických cvičení, kde studenti zkouší programovat jednoduché úlohy v jazyce Java. Kurzy probíhají po dobu třinácti týdnů a jsou zaměřeny na osvojení si objektově orientovaného programování. 3.2 Kurz Programování v Javě Cílem předmětu je předat studentům základy programování v jazyce Java konkrétně jde o osvojení si základních konstrukcí metod, datových struktur (List, Map, Set, Pole, 12
13 Map), jednoduchých datových typů, dědičnosti, výjimek, tříd, rozhraní, polymorfismu, jednotkových testů, lambda výrazů. V předmětu jsou studenti povinni odevzdat výstupy v podobě naprogramovaného semestrálního úkolu s předem daným zadáním nebo s tím, které si sami vymyslí a je schváleno cvičícím. V průběhu cvičení ještě musí splnit několik domácích úkolů týkající se programování jednoduchých softwarů. 3.3 Kurz Softwarové inženýrství Cílem předmětu je představit studentům základy z oblasti softwarového inženýrství a zaměřit se na návrh a implementaci nového softwarového řešení. Během semestru studenti odevzdávají výstupy v podobě naprogramovaného grafického uživatelského rozhraní, následně v týmech zpracovávají designový model pro tuto semestrální úlohu a poté v týmu vytváří samotný kód, kde využívají úložiště Subversion, které umožňuje spravovat jednotlivé verze naprogramovaného kódu. V průběhu semestru dále odevzdává student menší projekty v podobě domácích úkolů a jednoduchého naprogramovaného softwaru. 4 Aplikace pro předměty na VŠE v Praze Na základě seznámení se s přístupem výuky vývoje softwarových aplikací na Imperial College v Londýně jsme vybrali následující doporučení, která by mohla současnou podobu kurzů programování a přístup k výuce těchto kurzů ještě více ozvláštnit. Do sady těchto doporučení jsme zvážili i současnou situaci poptávky po IT specialistech na českém trhu a další možné formy vzdělávání vysokoškolských studentů. I z toho důvodu mohou působit následujícící doporučení více komplexněji, ale je důležité mít na paměti, že tato doporučení nemají za cíl měnit stávající přístup k výuce, ale zejména doplnit výuku o další prvky, které mohou samotnou výuku daných kurzů a také studenty, obohatit. 4.1 Zvané přednášky externistů z praxe Mimo nutných teoretických znalostí, které studenti často postrádají z předchozího středoškolského vzdělání, je dle našeho názoru od začátku nutné provázat tyto teoretické poznatky s poznatky z praxe. Stejně tak jako v jiných předmětech i v programování je velkou výhodou, když si student může danou problematiku aplikovat na reálný příklad. Ideální by byla možnost vyzkoušet si dané modelové situace přímo na cvičeních na zadaném úkolu. 13
14 4.2 Rozšířená výuka programovacích jazyků využitelných při implementaci řešení ERP a BI Velikou příležitost vidíme také v zavedení rozšířené výuky programovacích jazyků využitelných při implementaci řešení ERP a BI. Zejména při současném nedostatku odborníků v tomto odvětví. Studenti oboru informatiky mají dle našeho názoru výhodu ve znalosti předmětů z ekonomické oblasti - jako je například účetnictví, řízení podniku, management, atd. Mají tudíž velmi dobrý základ pro pochopení business logiky a provázání této logiky s technologickou částí zmíněných technologických řešení, které podporují cíle, řízení a fungování podniku. 4.3 Využití metodik v praxi a organizované řízení týmů Z našeho zpětného pohledu po absolvování mnoha kurzů nejen z oblasti programování v rámci bakalářského i magisterského studia na VŠE vidíme jako klíčové seznámení studentů s prací v týmu už od prvních týmových projektů na bakalářském studiu. Zejména v kurzu Softwarového inženýrství se nám zdá vhodné rozdělit role před začátkem projektu. Je podle nás důležité, aby byl cíleně stanoven vedoucí týmu, který zodpovídá za odevzdané výstupy,prezentaci výsledného produktu a ohodnocení ostatních členů týmu. Další členové týmu by obsadili například pozici vývojáře, testera, atp. Týmy by mohli mimo výsledné aplikace rovněž odevzdat průběžné zprávy o stavu jejich projektů a naučit se základy řízení projektu a týmu dle některých výše zmíněných metodik. Hlavním nedostatkem tohoto návrhu vidíme možný nedostatek času na zapojení těchto aktivit do standardního učebního plánu. 4.4 Založení klubu programátorů Po vzoru založení různých klubů a spolků, které působí na VŠE, jako například Klub investorů nebo Klub mladých manažerů, vidíme příležitost pro založení Klubu programátorů. Tento klub by vystupoval jako komunita lidí, kteří se o programování zajímají více i ve volném čase, chtějí sdílet svoje nápady, řešit společně s ostatními problémy z oblasti vývoje aplikací a účastnit se zvaných přednášek se zajímavými hosty. Tyto přednášky by mohly být zaměřeny nejen na programování jako takové, ale také na práci v týmu programátorů, na oblast moderních trendů v oblasti programování a to jak formou přednášek, tak například možnosti navštívení firem, které působí na trhu IT. V klubu programátorů by bylo možné pořádat tzv. dev meetupy zaměřené přímo na praktické ukázky programování a rozvíjení nových technik. 4.5 Založení dev fóra 14
15 Stejně jako na Imperial College by bylo dle našeho názoru zajímavé založení dev fóra, kde by bylo možné přímé komunikace s externisty a odborníky z praxe, kteří by mohli studentům zodpovědět jejich dotazy a případně pomoci s jejich problémy při řešení úloh v rámci kurzů vývoje SW aplikací. 4.6 Grow shopping Nejen studenti, kteří se chtějí vzdělávat, ale i studenti, kteří chtějí vzdělávat ostatní, by měli dostat prostor pro seberealizaci. K tomu by sloužil tzv. grow shopping. Jeho podstatou je sdílení svých zkušeností z teorie a praxe s ostatními. Studenti by tedy měli vedle možností vzdělávání se na odborných kurzech se senior specialisty, možnost navyšování znalostí ve svém volném čase se svými kamarády či spolužáky. Myslíme si, že Vysoká škola ekonomická má dostatek prostor na to, aby mohla v tomto studentům vyjít vstříc. Grow shopping vidíme jako vhodný nejen pro studenty, kteří se chtějí něco naučit, ale zároveň pro studenty, kteří učí ostatní. Díky tomu získají více sebejistoty při komunikaci s ostatními, rozvinou schopnost přednášení, což vidíme jako klíčové například pro prezentaci řešení zákazníkovi. Zároveň se také zdokonalují v oblasti zjišťování požadavků, protože každý student přichází s jinou znalostí a zkušenostmi z programování a přednášející student by byl nucen zjistit co vše je potřeba ve své ukázce odprezentovat jak teoreticky, tak prakticky. 4.7 Přednášky pro rozvoj komunikace, vystupování, vyjednávání V rámci navazujícího magisterského programu vidíme jako vhodné seznámit studenty mimo jiné s problematikou řízení projektu také s oblastmi komunikace, správného vystupování a jednání se zákazníkem a případné vyjednávání. Pro budoucí konzultanty, ať už v oblasti vývoje individuálních či typových řešení SW aplikací, informačních systémů či řešení business intelligence, vidíme jako důležité vzdělání v oblasti identifikace a zaznamenání klientských požadavků. Pro budoucí vedoucí projektů je zase důležité mít základy vyjednávání a mít tak možnost vyjednat si výhodné podmínky pro svůj tým se zachováním maximální možné míry spokojenosti zákazníka. Vzdělání této oblasti by mohlo být omezené na zvané přednášky odborníků z praxe, kterých působí na naší Vysoké škole celá řada a vedou úspěšné kurzy na vedlejších specializacích. 15
16 Závěr Cílem práce bylo představit techniky moderního vývoje softwaru vyučované na zahraniční univerzitě a vybrané techniky z modelu aplikovat na Vysoké škole ekonomické v Praze. Nejdříve se práce věnovala metodikám využivaných při výuce na představované univerzitě v zahraničí, dále se zaměřila na samotný model výuky a kurzy spadající do kategorie moderního vývoje softwaru a v závěrečných kapitolách představila model výuky na Vysoké škole ekonomické v Praze a navrhla doporučení, které by výuku na základě informací ze zahraničního modelu mohly zefektivnit. Jelikož autoři neznají všechny procesy, které se váží, ke změnám v učebním plánu na českých státních univerzitách, mohou být stanovená doporučení limitována z hlediska zmiňovaných faktorů. Literatura Soupis použité literatury. Použijte Harvardský systém (forma jméno,datum) jako metodu citování a odkazování při dodržení aktuální normy ISO 690. Aplikovaná informatika. Vysoká škola ekonomická v Praze [online]..:.,. [cit ]. Dostupné z: CHATLEY, Robert. Teaching Modern Software Development Techniques at University. Infoq [online]., 1 [cit ]. Dostupné z: Computing (MEng) [online]. London: Imperial College, 2017 [cit ]. Dostupné z: POLLICE, Gary. Teaching software development vs. software engineering [online]. [cit ]. Dostupné z: Software development methodologies. ITINFO [online]. -: -, 2016 [cit ]. Dostupné z: Výuka programování a softwarového inženýrství na KIT VŠE. Java.vse.cz [online]. -: -, 2017 [cit ]. Dostupné z: 16
17 BUCHALCEVOVÁ, Alena. Metodiky budování informačních systémů. Praha: Oeconomica, ISBN BRUCKNER, Tomáš, BUCHALCEVOVÁ, Alena. Tvorba informačních systémů: principy, metodiky, architektury. Praha: Grada, Management v informační společnosti. ISBN
Návrh softwarových systémů - úvod, motivace
Návrh softwarových systémů - úvod, motivace Jiří Šebek, Martin Tomášek Návrh softwarových systémů (B6B36NSS) Obsah Motivace Integrace s ostatními obory SI Kdo / co ovlivňuje cílový SW Modely, metodiky
Návrh softwarových systém. Návrh softwarových systémů
Návrh softwarových systém ů - úvod, motivace Jiří Šebek Návrh softwarových systémů (B6B36NSS) Obsah Motivace Integrace s ostatními obory SI Modely, metodiky SI Verzování SW 2 Úvod Motivace SI Velké projekty
Agile Software Development
Agile Software Development Agile Software Development Jiri Fabian www.jirifabian.net O čem to bude O metodologiích RUP Agile XP Scrum Co je softwarový vývoj Umění? Manufaktura? Modelování? Co je softwarový
ÚVOD DO SOFTWAROVÉHO INŽENÝRSTVÍ
ÚVOD DO SOFTWAROVÉHO INŽENÝRSTVÍ Předmětem softwarového inženýrství jsou metodiky pro řízení vývoje softwaru. Proč potřebujeme tyto metodiky? Čím je vývoje softwaru specifický oproti jiným odvětvím? SOFTWAROVÉ
PRŮVODCE STUDIEM PRO PREZENČNÍ FORMU STUDIA MODULU IT V PODNIKU DÍLČÍ ČÁST PROGRAMOVÁNÍ BUSINESS APLIKACÍ
PRŮVODCE STUDIEM PRO PREZENČNÍ FORMU STUDIA MODULU IT V PODNIKU DÍLČÍÍ ČÁSTT PROGRAMOVÁNÍ BUSINESS APLIKACÍ Bronislav Heryán Jiří Kubica Ostrava 2011 Název: Autoři: Vydání: Počet stran: Tisk: Vydala: IT
Management informačních systémů. Název Information systems management Způsob ukončení * přednášek týdně
Identifikační karta modulu v. 4 Kód modulu Typ modulu profilující Jazyk výuky čeština v jazyce výuky Management informačních systémů česky Management informačních systémů anglicky Information systems management
Datová věda (Data Science) akademický navazující magisterský program
Datová věda () akademický navazující magisterský program Reaguje na potřebu, kterou vyvolala rychle rostoucí produkce komplexních, obvykle rozsáhlých dat ve vědě, v průmyslu a obecně v hospodářských činnostech.
Vývoj informačních systémů. Jak vyvíjet v týmu
Vývoj informačních systémů Jak vyvíjet v týmu Co je potřeba a co je podstatné? Lidé a jejich spolupráce Plány, pravidla, procesy, řízení Dokumentace Techniky a technologie Dlouhý čas Cílem je produkt (software)
Vývoj informačních systémů. Přehled témat a úkolů
Vývoj informačních systémů Přehled témat a úkolů Organizace výuky doc. Mgr. Miloš Kudělka, Ph.D. EA 439, +420 597 325 877 homel.vsb.cz/~kud007 milos.kudelka@vsb.cz Přednáška Teorie Praxe Cvičení Diskuze
Analýza a Návrh. Analýza
Analysis & Design Návrh nebo Design? Design = návrh Není vytváření použitelného uživatelského prostředí (pouze malinká podmnožina celého návrhu) Často takto omezeně chápáno studenty nedokáží si představit,
Řízení reálných projektů, agilní metodiky
Agent Technology Group Katedra kybernetiky Fakulta elektrotechnická - České vysoké učení technické Praha, 2009 Osnova Lze vyvíjet software bez metodiky? - bohužel ano menší komerční firmy (zejména vývoj
Zuzana Šochová 30.10.2008. MFF Modelování a realizace softwarových projektů
Zuzana Šochová 30.10.2008 1 Metody řízení projektů Týmová spolupráce Agilní metody Scrum proces Backlog úloh a odhady Jak plánovat Tým a zákazník 2 Executive support User involvement Experienced project
Bakalářský studijní obor Manažerská ekonomika specializace Marketing. pro studenty studující od roku 2011/2012
Studijní obor Manažerská ekonomika Bakalářský studijní obor Manažerská ekonomika specializace Marketing pro studenty studující od roku 2011/2012 V první fázi studia oboru Manažerská ekonomika získá student
Vývoj informačních systémů. Přehled témat a úkolů
Vývoj informačních systémů Přehled témat a úkolů Organizace výuky doc. Mgr. Miloš Kudělka, Ph.D. EA 439, +420 597 325 877 homel.vsb.cz/~kud007 milos.kudelka@vsb.cz Přednáška Znalosti Schopnosti Cvičení
SOFTWAROVÉ INŽENÝRSTVÍ Řízení IT projektů
SOFTWAROVÉ INŽENÝRSTVÍ Řízení IT projektů Ing. Ondřej Macek 2013/14 ČESKÉ VYSOKÉ UČENÍ TECHNICKÉ V PRAZE Historie 2 Jak vypadal vývoj SW? - Bylo třeba specifikovat zadání, to se naprogramovalo a pak se
5.1.7 Informatika a výpočetní technika. Časové, obsahové a organizační vymezení. ročník 1. 2. 3. 4. hodinová dotace 2 2 0 0
5.1.7 Informatika a výpočetní technika Časové, obsahové a organizační vymezení ročník 1. 2. 3. 4. hodinová dotace 2 2 0 0 Realizuje se vzdělávací obor Informatika a výpočetní technika RVP pro gymnázia.
X36SIN: Softwarové inženýrství. Životní cyklus a plánování
X36SIN: Softwarové inženýrství Životní cyklus a plánování 1 Kontext Minule jsme si řekli, co to je deklarace záměru, odborný článek, katalog požadavků, seznam aktérů a seznam událostí. Seznam aktérů a
Ročníkový projekt. Jaroslav Žáček jaroslav.zacek@osu.cz
Ročníkový projekt Jaroslav Žáček jaroslav.zacek@osu.cz Cíle předmětů Vytvoření fungující aplikace, která splňuje definované požadavky Vyzkoušet si celý životní cyklus projektu - specifikace zadání, formování
SYLABUS IT V. Jiří Kubica. Ostrava 2011
P MODULU SYLABUS IT V DÍLČÍ ČÁST PROGRAMOVÁNÍ BUSINESS APLIKACÍ PODNIKU Bronislav Heryán Jiří Kubica Ostrava 20 : Autoři: Vydání: Počet stran: Tisk: Vydala: Sylabus modulu IT v podniku Programování business
SYSTÉMOVÉ INŽENÝRSTVÍ A
Bakalářský studijní program (B6209) SYSTÉMOVÉ INŽENÝRSTVÍ A INFORMATIKA Bakalářský studijní obor Informatika v ekonomice STUDIJNÍ OBOR SYSTÉMOVÉ INŽENÝRSTVÍ A INFORMATIKA Nejstarší obor na VŠB-TUO ( od
Antonín Přibyl Odborná praxe oborů PS a AI
Výchozí stav Vysoká škola polytechnická Jihlava je veřejná vysoká škola zaměřená na aplikovanou vzdělanost, jejímž posláním je poskytovat studijní programy zaměřené zejména na potřeby regionálního trhu
Bakalářský studijní obor hospodářská informatika
Bakalářský studijní obor hospodářská informatika Předpoklady Struktura studia Přihlášky Poradenství Bakalářský studijní obor hospodářská informatika nabízí fundované vědecké a praktické vzdělání v oblasti
Bakalářský studijní obor Manažerská ekonomika specializace Marketing. pro studenty studující od roku 2011/2012
Studijní obor Manažerská ekonomika Bakalářský studijní obor Manažerská ekonomika specializace Marketing pro studenty studující od roku 2011/2012 V první fázi studia oboru Manažerská ekonomika získá student
Cíle a metodika průzkumu
Cíle a metodika průzkumu Prof. Ing. Jiří Voříšek, CSc. Ing. Ota Novotný, Ph.D. Seminář ČSSI SPIS CACIO 15.5.2007 Konkurenceschopnost absolventů IT oborů VŠ a VOŠ na trhu práce v ČR Společný projekt ČSSI,
Specializace Návrhář software na základě analýzy vytváří návrh softwarových aplikací ve formě schémat a diagramů.
Návrhář software Návrhář software na základě analýzy vytváří návrh softwarových aplikací ve formě schémat a diagramů. Odborný směr: Informační technologie Odborný podsměr: nezařazeno do odborného podsměru
Spojení a kontakty: Střední průmyslová škola strojní a elektrotechnická a Vyšší odborná škola, Liberec 1, Masarykova 3, příspěvková organizace
Spojení a kontakty: Střední průmyslová škola strojní a elektrotechnická a Vyšší odborná škola, Liberec 1, Masarykova 3, příspěvková organizace Ředitel: Ing. Josef Šorm Zástupci ředitele: Mgr. Jan Šimůnek
Informační média a služby
Informační média a služby Výuka informatiky má na Fakultě informatiky a statistiky VŠE v Praze dlouholetou tradici. Ke dvěma již zavedeným oborům ( Aplikovaná informatika a Multimédia v ekonomické praxi
Vývoj řízený testy Test Driven Development
Vývoj řízený testy Test Driven Development Richard Salač, Ondřej Lanč Fakulta jaderná a fyzikálně inženýrská České vysoké učení technické v Praze 23. - 30. 10. 2012 Obsah 1 Testování 2 Klasický přístup
Klasické metodiky softwarového inženýrství I N G M A R T I N M O L H A N E C, C S C. Y 1 3 A N W
Klasické metodiky softwarového inženýrství I N G M A R T I N M O L H A N E C, C S C. Y 1 3 A N W Osnova přednášky Co to je softwarové inženýrství Softwarový proces Metodika a metoda Evoluce softwarových
2. Modelovací jazyk UML 2.1 Struktura UML 2.1.1 Diagram tříd 2.1.1.1 Asociace 2.1.2 OCL. 3. Smalltalk 3.1 Jazyk 3.1.1 Pojmenování
1. Teoretické základy modelování na počítačích 1.1 Lambda-kalkul 1.1.1 Formální zápis, beta-redukce, alfa-konverze 1.1.2 Lambda-výraz jako data 1.1.3 Příklad alfa-konverze 1.1.4 Eta-redukce 1.2 Základy
programátor vs. vývojář
programátor vs. vývojář... Michał Weiser @michal_weiser linkedin.com/in/michalweiser https://kahoot.it QUIZ Jarda vzdělání Bc. Informační technologie, VUT FIT jazyky čeština nativní angličtina - B2 zkušenosti
ŠVP Gymnázium Ostrava-Zábřeh. 4.8.16. Úvod do programování
4.8.16. Úvod do programování Vyučovací předmět Úvod do programování je na naší škole nabízen v rámci volitelných předmětů v sextě, septimě nebo v oktávě jako jednoletý dvouhodinový kurz. V případě hlubšího
Úvod do softwarového inženýrství a týmového vývoje
Úvod do softwarového inženýrství a týmového vývoje Ing. Jiří Mlejnek Katedra softwarového inženýrství Fakulta informačních technologií České vysoké učení technické v Praze Jiří Mlejnek, 2011 jiri.mlejnek@fit.cvut.cz
Co se chcete dozvědět?
IBA CZ, s.r.o. Loňská otázka dr. Ráčka. Co se chcete dozvědět?? Dostalo se mu pouze 2 odpovědí 2 Letos jsme si odpovědi raději připravili. Co se chcete dozvědět? 1. Kdo je IBA CZ? 2. Čím se IBA CZ zabývá?
Masarykova střední škola zemědělská a Vyšší odborná škola, Opava, příspěvková organizace
Masarykova střední škola zemědělská a Vyšší odborná škola, Opava, příspěvková organizace Číslo projektu Číslo materiálu Autor Průřezové téma Předmět CZ.1.07/1.5.00/34.0565 VY_32_INOVACE_284_Programovací_jazyky
Obsah. Zpracoval:
Zpracoval: houzvjir@fel.cvut.cz 03. Modelem řízený vývoj. Doménový (business), konceptuální (analytický) a logický (návrhový) model. Vize projektu. (A7B36SIN) Obsah Modelem řízený vývoj... 2 Cíl MDD, proč
V t í á t V á V s ČVU V T v v P r P a r ze
Vítá Vás Fakulta informačních ních technologií ČVUT v Praze 25. 11. 2009 Den otevřených dveří FIT 1 Historie FIT je zatím velmi krátká - jsme na startu 31. 3. 2008 první info na www.cvut.cz 20. 1. 2009
Kombinované studium aplikované informatiky na katedře informatiky
1 Kombinované studium aplikované informatiky na katedře informatiky 2016 2 Obsah Co je kombinované studium?... 3 Proč studovat na katedře informatiky PřF UJEP?... 6 Studijní plán a uplatnění absolventů...
SOFTWAROVÉ INŽENÝRSTVÍ 1
Metodický list č. 1 Název tématického celku: Úvod do softwarového inženýrství Základním cílem tohoto tematického celku je vysvětlení smyslu discipliny nazývané softwarové inženýrství. Tematický celek zahrnuje
INFORMAČNÍ SYSTÉMY. 03. 01. 2006, Ing. Jiří Mráz
INFORMAČNÍ SYSTÉMY 03. 01. 2006, Ing. Jiří Mráz PŘEDNÁŠEJÍCÍ Jiří Mráz Production Coordinator UNICORN jiri.mraz@unicorn.cz AGENDA Informační a komunikační technologie (ICT) podniku Informační systémy Zakázkový
Informační systémy ve výuce na PEF Information Systems in teaching at the FEM
Informační systémy ve výuce na PEF Information Systems in teaching at the FEM Edita Šilerová, Čestmír Halbich, Jana Hřebejková Cíle Předmět Informační systémy je postupně od roku 1994 zařazován na všechny
Bakalářský studijní obor informatika
Bakalářský studijní obor informatika Předpoklady Struktura studia Přihlášky Poradenství Vzdělání v bakalářském oboru informatika nabízeném na Technické univerzitě v Chemnitz představuje vyvážený kompromis
Firma příjemce voucheru. ACEMCEE, s. r. o. (www.acemcee.com) U Vodárny 2, 616 00 Brno. Informační a komunikační technologie
Firma příjemce voucheru ACEMCEE, s. r. o. (www.acemcee.com) Sídlo Obor Velikost Profil U Vodárny 2, 616 00 Brno Informační a komunikační technologie Drobný podnik ACEMCEE je firma působící v oblastech
Proces vývoje HRIS Vema (Human Resources Information System) Jaroslav Šmarda
Proces vývoje HRIS Vema (Human Resources Information System) Jaroslav Šmarda Proces vývoje HRIS Vema Vlastnosti HRIS (Human Resources Information System) HRIS Vema Proces vývoje HRIS Vema Vema, a. s. Přední
Agilní metodiky vývoje softwaru
vývoje softwaru : důraz na průběžnou komunikaci mezi vývojovým týmem a zákazníkem důraz na tvorbu kvalitního kódu a funkcí, které mají přímou obchodní hodnotu pro zákazníka týmovou spolupráci a samoorganizaci
RUP - Disciplíny. Jaroslav Žáček jaroslav.zacek@osu.cz
RUP - Disciplíny Jaroslav Žáček jaroslav.zacek@osu.cz Disciplíny Množství disciplíny v dané iteraci Disciplíny podle RUP Šest základních: Business modeling - pro pochopení problémové domény Requirements
SOFTWAROVÉ INŽENÝRSTVÍ Řízení IT projektů
SOFTWAROVÉ INŽENÝRSTVÍ Řízení IT projektů Ing. Ondřej Macek 2013/14 ČESKÉ VYSOKÉ UČENÍ TECHNICKÉ V PRAZE Historie 2 Jak vypadal vývoj SW? - Bylo třeba specifikovat zadání, to se naprogramovalo a pak se
Results of innovation of the course Application software
Zkušenosti z inovace předmětu Aplikační programové vybavení Results of innovation of the course Application software Miroslav Cepl *, Ondřej Popelka Abstrakt Článek popisuje postup a průběžný výsledek
Soulad studijního programu. Aplikovaná informatika
Standard studijního Aplikovaná informatika A. Specifika a obsah studijního : Typ Oblast/oblasti vzdělávání Základní tematické okruhy Kód Rozlišení Profil studijního Propojení studijního s tvůrčí činností
Agile. nejžádanější způsob vývoje software. Tomáš Tureček. Business consultant, Lean&Agile coach Tieto tomas.t.turecek@tieto.com
2010 Tieto Corporation Agile nejžádanější způsob vývoje software Tomáš Tureček Business consultant, Lean&Agile coach Tieto tomas.t.turecek@tieto.com 2012 Tieto Corporation Tieto Aktivity ve více než 20
Metodika analýzy. Příloha č. 1
Metodika analýzy Příloha č. 1 Příloha č. 1 1 Účel dokumentu Dokument popisuje závaznou metodiku systémové analýzy, je upraven na míru pro prostředí Podniku. Dokument je provázán s Podnikovou analýzou,
Management hotelnictví
Specializace Management hotelnictví Studijní program Ekonomika a management Studijní obor Podniková ekonomika a management Specializace je určena zájemcům, kteří chtějí získat: jazykové a komunikační dovednosti,
MATURITNÍ OTÁZKY ELEKTROTECHNIKA - POČÍTAČOVÉ SYSTÉMY 2003/2004 PROGRAMOVÉ VYBAVENÍ POČÍTAČŮ
MATURITNÍ OTÁZKY ELEKTROTECHNIKA - POČÍTAČOVÉ SYSTÉMY 2003/2004 PROGRAMOVÉ VYBAVENÍ POČÍTAČŮ 1) PROGRAM, ZDROJOVÝ KÓD, PŘEKLAD PROGRAMU 3 2) HISTORIE TVORBY PROGRAMŮ 3 3) SYNTAXE A SÉMANTIKA 3 4) SPECIFIKACE
KIV/ASWI 2007/2008 Pokročilé softwarové inženýrství. Cíle předmětu Organizační informace Opakování
KIV/ASWI 2007/2008 Pokročilé softwarové inženýrství Přemysl Brada Cíle předmětu Organizační informace Opakování Cíl předmětu Praktické zkušenosti sw proces a iterativní vývoj jaksi mimochodem
Vývoj informačních systémů. Obecně o IS
Vývoj informačních systémů Obecně o IS Informační systém Informační systém je propojení informačních technologií a lidských aktivit směřující k zajištění podpory procesů v organizaci. V širším slova smyslu
Příloha č. 7 zadávací dokumentace popis vzdělávacích aktivit část VZ č. 2 Název projektu: FINIDR AKADEMIE - vzdělávání zaměstnanců
Příloha č. 7 zadávací dokumentace popis vzdělávacích aktivit část VZ č. 2 Název projektu: FINIDR AKADEMIE - vzdělávání zaměstnanců Klíčová aktivita: Štíhlá administrativa Štíhlá administrativa a Kurz naplánovaný
TREND 07-201 POPIS ODPOVĚDNOSTI PRACOVNÍKA MANAŽER VÝVOJE
Tel. +420 543426329 TREND 07-201 POPIS ODPOVĚDNOSTI PRACOVNÍKA MANAŽER VÝVOJE Autor: Vít Chvál Verze dokumentu: 1.0 Datum poslední změny: 18.2.2013 Obsah: 1 Pracovník 3 2 Pracovní činnosti (Náplň práce)
Seminář VŠE, ČSSI a ICT UNIE 26.10.2011
Výsledky průzkumu nabídky a poptávky po IT profesích v ČR Seminář VŠE, ČSSI a ICT UNIE 26.10.2011 Výzkum Lidské zdroje v ICT vznikl za finanční podpory MŠMT ČR v rámci projektu Sociální síť v regionech
Management IS. Doc.Ing.Miloš Koch,CSc. koch@fbm.vutbr.cz 22/ 1
Management IS Doc.Ing.Miloš Koch,CSc. koch@fbm.vutbr.cz 22/ 1 Učitelé Přednášející: Cvičící: Doc.Ing.Miloš Koch,CSc. Ing.Aleš Klusák Kontakt: koch@fbm.vutbr.cz 22/ 2 Literatura Skripta: Koch,M. Dovrtěl,J.:
Nový bakalářský studijní obor Biomedicínská informatika na Fakultě biomedicínského inženýrství v Kladně
Fakulta biomedicínského inženýrství České vysoké učení technické v Praze Nový bakalářský studijní obor Biomedicínská informatika na Fakultě biomedicínského inženýrství v Kladně Zoltán Szabó Katedra biomedicínské
4IT445 - AGILNÍ VÝVOJ WEBOVÝCH APLIKACÍ AGILNÍ METODIKY VÝVOJE SW ING. JAN ČERNÝ
4IT445 - AGILNÍ VÝVOJ WEBOVÝCH APLIKACÍ AGILNÍ METODIKY VÝVOJE SW ING. JAN ČERNÝ 1 METODIKY K ČEMU JSOU DOBRÉ? BUĎ NEMÁTE ŽÁDNOU NEBO STRIKTNÍ / RIGORÓZNÍ POSTUPY NĚCO MEZI TÍM: AGILNÍ PŘÍSTUP K ČEMU
1. VYMEZENÍ ODBORNÉ STÁŽE
1. VYMEZENÍ ODBORNÉ STÁŽE Šablona stáže představuje základní rámec odborné stáže pro typovou pozici a obsahuje požadavky na obsah a průběh stáže, na stážistu i na poskytovatele stáže. Bílá pole označují
PŘÍLOHA C Požadavky na Dokumentaci
PŘÍLOHA C Požadavky na Dokumentaci Příloha C Požadavky na Dokumentaci Stránka 1 z 5 1. Obecné požadavky Dodavatel dokumentaci zpracuje a bude dokumentaci v celém rozsahu průběžně aktualizovat při každé
IB111 Programování a algoritmizace. Programovací jazyky
IB111 Programování a algoritmizace Programovací jazyky Programovací jazyky Programovací jazyk Prostředek pro zápis algoritmů, jež mohou být provedeny na počítači Program Zápis algoritmu v programovacím
Smysl metodiky IS/IT. Koncentrovaná zkušenost Checklist na nic nezapomeneme
Smysl metodiky IS/IT Koncentrovaná zkušenost Checklist na nic nezapomeneme Přínosy metodik Větší produktivita a kooperace týmů Komunikační standard Specializace projektových týmů Nezávislost na konkrétních
DATABÁZOVÉ SYSTÉMY. Metodický list č. 1
Metodický list č. 1 Cíl: Cílem předmětu je získat přehled o možnostech a principech databázového zpracování, získat v tomto směru znalosti potřebné pro informačního manažera. Databázové systémy, databázové
Tvorba internetových aplikací s využitím framework jquery
Tvorba internetových aplikací s využitím framework jquery Autor Michal Oktábec Vedoucí práce PaedDr. Petr Pexa Školní rok: 2009-10 Abstrakt Tato práce se zabývá využití frameworku jquery pro vytváření
Magisterský studijní program, obor
Ústav Automatizace a Informatiky Fakulta Strojního Inženýrství VUT v Brně Technická 2896/2, 616 69 Brno, Česká republika Tel.: +420 5 4114 3332 Fax: +420 5 4114 2330 E-mail: seda@fme.vutbr.cz WWW: uai.fme.vutbr.cz
Ročníkový projekt. Jaroslav Žáček
Ročníkový projekt Jaroslav Žáček jaroslav.zacek@osu.cz http://www1.osu.cz/~zacek/infs1/ Cíle předmětů Vytvoření fungující aplikace, která splňuje definované požadavky Vyzkoušet si celý životní cyklus projektu
Informatika na Univerzitě Palackého
Informatika na Univerzitě Palackého prof. RNDr. Radim Bělohlávek, DSc. vedoucí katedry KATEDRA INFORMATIKY UNIVERZITA PALACKÉHO V OLOMOUCI Obsah 1 Co je informatika a proč ji studovat? 2 Kde informatiku
XINF1. Jaroslav Žáček jaroslav.zacek@osu.cz
XINF1 Jaroslav Žáček jaroslav.zacek@osu.cz Tutoriály 24.10. - 3h 6.11. - 2,2h 27.11. - 1,5h Tutoriály budeme věnovat nejen teorii, ale také cvičení a workshopům. Přečtěte si skripta dříve, než týden před
Masterský studijní obor datové & webové inženýrství
Masterský studijní obor datové & webové inženýrství Předpoklady Struktura studia Přihlášky Poradenství Masterský studijní obor datové & webové inženýrství představuje ve studijním konceptu fakulty informatiky
CASE. Jaroslav Žáček
CASE Jaroslav Žáček jaroslav.zacek@osu.cz http://www1.osu.cz/~zacek/ Co znamená CASE? Definice dle SEI A CASE tool is a computer-based product aimed at supporting one or more software engineering activities
Využití moderní vizualizační a simulační techniky v oblasti dopravních systémů
Využití moderní vizualizační a simulační techniky v oblasti dopravních systémů Doba realizace 31.8.2016 30.4.2019 Stručný popis projektu včetně jeho cílů a výsledků Děčínské pracoviště Fakulty dopravní
Česká zemědělská univerzita v Praze
Česká zemědělská univerzita v Praze Provozně ekonomická fakulta Katedra informačních technologií Teze diplomové práce Operační systém Google Android Petr Koula 2011 ČZU v Praze Souhrn Diplomová práce zahrnuje
Tovek Server. Tovek Server nabízí následující základní a servisní funkce: Bezpečnost Statistiky Locale
je serverová aplikace určená pro efektivní zpracování velkého objemu sdílených nestrukturovaných dat. Umožňuje automaticky indexovat data z různých informačních zdrojů, intuitivně vyhledávat informace,
Inženýr IT a řídících systémů
Inženýr IT a řídících systémů Kdo to je: Inženýr IT a řídících systémů je vysoce kvalifikovaný pracovník, který komplexně stanovuje směry technického rozvoje řídících technologických systémů a nastavení
Problémové domény a jejich charakteristiky
Milan Mišovič (ČVUT FIT) Pokročilé informační systémy MI-PIS, 2011, Přednáška 02 1/16 Problémové domény a jejich charakteristiky Prof. RNDr. Milan Mišovič, CSc. Katedra softwarového inženýrství Fakulta
MODULU BUSINESS MODELOVÁNÍ
PRŮVODCE STUDIEM PRO PREZENČNÍ FORMU STUDIA MODULU BUSINESS MODELOVÁNÍ Doc. RNDr. Vladimír Krajčík, Ph.D. Ostrava 2011 1 Název: Business modelování Autoři: Doc. RNDr. Vladimír Krajčík, Ph.D. Vydání: první,
Normy kvality softwaru a jejich podpora v metodikách budování informačních systémů
Normy kvality softwaru a jejich podpora v metodikách budování informačních systémů Alena Buchalcevová Vysoká škola ekonomická v Praze, Fakulta informatiky a statistiky, katedra informačních technologií
MORAVSKÁ VYSOKÁ ŠKOLA OLOMOUC
MORAVSKÁ VYSOKÁ ŠKOLA OLOMOUC partner pro byznys inovace MORAVSKÁ VYSOKÁ ŠKOLA OLOMOUC Hlavní zaměření: Odborná specializace: EKONOMIKA a MANAGEMENT Inovační management Informační a komunikační technologie
Microsoft SharePoint Portal Server 2003. Zvýšená týmová produktivita a úspora času při správě dokumentů ve společnosti Makro Cash & Carry ČR
Microsoft SharePoint Portal Server 2003 Zvýšená týmová produktivita a úspora času při správě dokumentů ve společnosti Makro Cash & Carry ČR Přehled Země: Česká republika Odvětví: Velkoobchod Profil zákazníka
Základy analýzy. autor. Jan Novotný http://blog.novoj.net/ 15. února 2007
Základy analýzy autor Jan Novotný http://blog.novoj.net/ 15. února 2007 V prezentaci jsou použity diagramy z: Wikipedia, Sparx UML Tutorial, Argo UML Metodiky vývoje Různé metodiky vývoje vazba na fáze
Zaměření IT Podnikání v IT
Zaměření IT Podnikání v IT Nové zaměření Podnikání v IT VOŠ 11. září 2014 Autor: Mgr. Pavel Anderle Zaměření IT Podnikání v IT Nové zaměření Podnikání v IT Předpokládané uplatnění studenta Podnikání v
8 Přehled OO metodik (metod, metodologií)
8 Přehled OO metodik (metod, metodologií) 8.1 OO metodiky konce 80. a začátku 90.let - všechny populární OO metodiky předpokládají, že: a) zadavatel má jasný názor na svoje požadavky, b) zadavatel a vývojáři
8 Přehled OO metodik (metod, metodologií)
8 Přehled OO metodik (metod, metodologií) 8.1 OO metodiky konce 80. a začátku 90.let - všechny populární OO metodiky předpokládají, že: a) zadavatel jasný názor na svoje požadavky, b) zadavatel a vývojáři
Cíl vzdělávacích modulů:
PŘÍLOHA č. 9 OBSAH VZDĚLÁVACÍHO PROGRAMU Projekt rozšiřuje nabídku dalšího vzdělávání prostřednictvím vytvoření vzdělávacího programu se speciální SW aplikací a skripty pro personalisty a vedoucí pracovníky,
2 Životní cyklus programového díla
2 Životní cyklus programového díla Typické etapy: 1. Specifikace požadavků - specifikace problému - analýza požadavků 2. Vývoj programu - návrh - kódování (programování) 3. Verifikace a validace 4. Provoz
Obsah předmětu (přehled hlavních témat a jejich obsahové náplně)
Anotační list k předmětu Řízení a ekonomika malých firem (REMF) Kód předmětu: Název v jazyce výuky: Název česky: Název anglicky: Způsob ukončení a počet kreditů: Forma výuky/rozvrhovaná výuka: Jazyk výuky:
Softwarový proces Martin Hlavatý 4. říjen 2018
Softwarový proces Martin Hlavatý 4. říjen 2018 Úvod Základní pojmy Softwarový proces / Model životního cyklu vývoje software (SDLC, Software Development Lifecycle) Množina aktivit nutných k tomu, aby software
Bankovní institut vysoká škola, a.s. Praha Karlovy Vary Písek Teplice Břeclav
Bankovní institut vysoká škola, a.s. Kdo jsme? První soukromá vysoká škola Atraktivní studijní obory Univerzitní informační systém Skvělé zázemí a nejnovější technika Moderní bezbariérová budova Jsme součástí
1 Úvod 1.1 Vlastnosti programového vybavení (SW)
1 Úvod 1.1 Vlastnosti programového vybavení (SW) - dávkové zpracování - omezená distribuce - zakázkový SW - distribuované systémy - vestavěná inteligence - laciný HW - vliv zákazníka 1950 1960 1970 1980
Softwarová podpora v procesním řízení
Softwarová podpora v procesním řízení Zkušenosti z praxe využití software ATTIS Ostrava, 7. října 2010 www.attis.cz ATTN Consulting s.r.o. 1 Obsah Koncepce řízení výkonnosti Koncepce řízení výkonnosti
Informační systém ozdravných pobytů zdravotní pojišťovny
Úvod ní studie @fel.cvut.cz Téma bakalářské práce: Informační systém ozdravných pobytů zdravotní pojišťovny Pokyny pro vypracování: Analyzujte IS ozdravných pobytů dětí a mládeže obecné zdravotní pojišťovny.
Architektura informačních systémů. - dílčí architektury - strategické řízení taktické řízení. operativní řízení a provozu. Globální architektura
Dílčí architektury Informační systémy - dílčí architektury - EIS MIS TPS strategické řízení taktické řízení operativní řízení a provozu 1 Globální Funkční Procesní Datová SW Technologická HW Aplikační
Agilní metodiky a techniky. analýza a vývoj IS
Agilní metodiky a techniky analýza a vývoj IS Využití UML UML jako náčrt systému UML jako plán vývoje UML jako programovací jazyk Příklad: Analýza - chyby v zákoně viz http://blog.geospy.org/tagged/anal%c3%bdza
SYLABUS MODUL BUSINESS MODELOVÁNÍ. Doc. RNDr. Vladimír Krajčík, Ph.D.
SYLABUS MODUL BUSINESS MODELOVÁNÍ Doc. RNDr. Vladimír Krajčík, Ph.D. Ostrava 20 : Business modelování Autoři: Doc. RNDr. Vladimír Krajčík, Ph.D. Vydání: první, 20 Počet stran: Tisk: Vysoká škola podnikání,
CASE nástroje. Jaroslav Žáček
CASE nástroje Jaroslav Žáček jaroslav.zacek@osu.cz http://www1.osu.cz/~zacek/ Co znamená CASE? A CASE tool is a computer-based product aimed at supporting one or more software engineering activities within
Architektury Informačních systémů. Jaroslav Žáček
Architektury Informačních systémů Jaroslav Žáček jaroslav.zacek@osu.cz http://www1.osu.cz/~zacek/ Nutné pojmy Co je to informační systém? Jaké oblasti zahrnuje? Jaká je vazba IS na podnikovou strategii?
UML - opakování I N G. M A R T I N M O L H A N E C, C S C. Y 1 3 A N W
UML - opakování I N G. M A R T I N M O L H A N E C, C S C. Y 1 3 A N W Co je to UML Evoluce UML Diagram komponent Diagram odbavení Diagram tříd Aktivity diagram Stavový diagram Sekvenční diagram Diagram