XINF1. Jaroslav Žáček jaroslav.zacek@osu.cz



Podobné dokumenty
Informační systémy. Jaroslav Žáček

Informační systémy. Jaroslav Žáček

Ročníkový projekt. Jaroslav Žáček

Ročníkový projekt. Jaroslav Žáček

Životní cyklus vývoje SW. Jaroslav Žáček

Architektury Informačních systémů. Jaroslav Žáček

Informační systémy ve strojírenství

Architektury Informačních systémů. Jaroslav Žáček

Analýza a Návrh. Analýza

RUP - MOTIVACE, PRINCIPY JAROSLAV ŽÁČEK

RUP - Motivace, principy. Jaroslav Žáček

Ing. Petr Kalčev, Ph.D.

Návrh softwarových systém. Návrh softwarových systémů

Návrh softwarových systémů - úvod, motivace

ÚVOD DO SOFTWAROVÉHO INŽENÝRSTVÍ

6INF2. RNDr. Jaroslav Žáček, Ph.D.

ARCHITEKTURA INFORMAČNÍCH SYSTÉMŮ PODLE ÚROVNĚ ŘÍZENÍ

KIS A JEJICH BEZPEČNOST-I

Architektura informačních systémů. - dílčí architektury - strategické řízení taktické řízení. operativní řízení a provozu. Globální architektura

Agile Software Development

RUP - Disciplíny. Jaroslav Žáček jaroslav.zacek@osu.cz

CASE. Jaroslav Žáček

Vývoj informačních systémů. Přehled témat a úkolů

Smysl metodiky IS/IT. Koncentrovaná zkušenost Checklist na nic nezapomeneme

Metodika analýzy. Příloha č. 1

CASE nástroje. Jaroslav Žáček

Agile. nejžádanější způsob vývoje software. Tomáš Tureček. Business consultant, Lean&Agile coach Tieto

Úvodní přednáška. Význam a historie PIS

Vývoj informačních systémů. Přehled témat a úkolů

Řízení reálných projektů, agilní metodiky

Návrh IS - UML. Jaroslav Žáček

KIV/ASWI 2007/2008 Pokročilé softwarové inženýrství. Cíle předmětu Organizační informace Opakování

Vývoj informačních systémů. Jak vyvíjet v týmu

Návrh IS - UML. Jaroslav Žáček

Management IS. Doc.Ing.Miloš Koch,CSc. 22/ 1

2. Začlenění HCI do životního cyklu software

TREND POPIS ODPOVĚDNOSTI PRACOVNÍKA MANAŽER VÝVOJE

8 Přehled OO metodik (metod, metodologií)

8 Přehled OO metodik (metod, metodologií)

UML a jeho použití v procesu vývoje. Jaroslav Žáček jaroslav.zacek@osu.cz

Základy analýzy. autor. Jan Novotný února 2007

INFORMAČNÍ SYSTÉMY , Ing. Jiří Mráz

Zuzana Šochová MFF Modelování a realizace softwarových projektů

SOFTWAROVÉ INŽENÝRSTVÍ Řízení IT projektů

Implementace informačního systému pro knihovnu Jiřího Mahena v Brně

Aplikace IS, outsourcing, systémová integrace. Jaroslav Žáček

Globální strategie, IT strategie, podnikové procesy. Jaroslav Žáček

Project management. Příprava projektu Zahájení High level plánování. Vykonávání Detailní plánování Vykonávání Řízení a monitorování

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

Agilní metodiky vývoje softwaru

Manažerská informatika - projektové řízení

Aplikace IS, outsourcing, systémová integrace. Jaroslav Žáček

Chytrá systémová architektura jako základ Smart Administration

2 Životní cyklus programového díla

Komplexní správa technických dat. PDM základní pojmy. Ing. Martin Nermut, 2012

SOFTWAROVÉ INŽENÝRSTVÍ Řízení IT projektů

Strategie, architektury a projekty jako nástroj řízení IT ve veřejné správě

SYSTÉMY ŘÍZENÍ PODNIKU OKRUHY OTÁZEK KE ZKOUŠCE Z PŘEDMĚTU MPH_SYRP V magisterském studiu

3 Inženýrství systémů založených na počítačích (Computer-based System Engineering)

IBM Analytics Professional Services

3 Inženýrství systémů založených na počítačích (Computer-based System Engineering)

Obsah: Základní pojmy, definice Informační systémy IT architektura Typické aplikační komponenty Implementace aplikací

PŘÍLOHA C Požadavky na Dokumentaci

Obsah. Zpracoval:

Softwarový proces. Bohumír Zoubek, Tomáš Krátký

Vývoj IS. Vladimíra Zádová, KIN, EF TUL- ISN3

Ing. Jiří Fejfar, Ph.D. Geo-informační systémy

Testování software. Jaroslav Žáček

Novinky v UML 2.5 a agilní modelování

SOFTWAROVÉ INŽENÝRSTVÍ

Řízení ICT služeb na bázi katalogu služeb

1. VYMEZENÍ ODBORNÉ STÁŽE

2. Podnik a jeho řízení

Manažerská ekonomika

Unifikovaný proces vývoje

projektového řízení a vytvořit předpoklady pro osvojení základů, principů, metod a technik projektové

Návrh softwarových systémů - architektura softwarových systémů

Softwarové inženýrství 01. doc. Ing. František Huňka, CSc.

Okruhy ke státním závěrečným zkouškám Platnost: od leden 2017

Systém je účelově uspořádána množina prvků a vazeb mezi nimi. Systém je souhrn souvisejících prvků, sdružený do nějakého smysluplného celku

CobiT. Control Objectives for Information and related Technology. Teplá u Mariánských Lázní, 6. října 2004

Návrh softwarových systémů - architektura softwarových systémů

Definice IS. Informace, informační systémy, informační společnost p. 6/47. Definice IS. Definice IS. objednatel či zadavatel; provozovatelé;

Stav řešení Enterprise Architektury na Moravskoslezském kraji

Informační systémy Informační systémy a informační technologie

Vývoj řízený testy Test Driven Development

BI-TIS Případová studie

Hardening ICT platforem: teorie nebo praxe. Pavel Hejduk ČEZ ICT Services, a. s.

Obsah. Předmluva... IX. Seznam obrázků... XIX. Seznam tabulek... XXV. ČÁST I. Teoretické základy... 1

Přednáška. Sběr požadavků na SW s použitím metody C.C a nástroje Craft.CASE. e-fractal, s.r.o.

Předmluva 11. Poděkování 11 O autorech 12 Úvodem 12 Komu je tato kniha určena 13 Jak byste měli tuto knihu číst 13 Web 14

X36SIN: Softwarové inženýrství. Životní cyklus a plánování

Softwarový proces Martin Hlavatý 4. říjen 2018

Proces vývoje HRIS Vema (Human Resources Information System) Jaroslav Šmarda

POŘÍZENÍ A IMPLEMENTACE INFORMAČNÍCH SYSTÉMŮ

VYSOKÁ ŠKOLA FINANČNÍ A SPRÁVNÍ, o.p.s. školící středisko Kladno katedra řízení podniku a podnikové ekonomiky INFORMAČNÍ SYSTÉMY V MANAŽERSKÉ PRÁCI

Informační systémy Teorie. KICT přednáška

Systémy pro podporu rozhodování. Hlubší pohled 2

Cíl výuky: Cílem předmětu je uvedení studentů do problematiky projektování, seznámit posluchače se zásadami

MĚSTSKÝ ROK INFORMATIKY

Transkript:

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 zkouškou. Pište na e-mail kdykoli něco nebude jasné, nečekejte až na tutoriál.

První námět k přemýšlení Co budete vyvíjet za informační systém v předmětu XROP1 Bude tento systém k něčemu dobrý? S kým budete vyvíjet nový informační systém?

Architektura IS Klíčový prvek řízení IS z něj vycházejí detailní analytické i plánovací charakteristiky celého IS. Architektura musí respektovat strategii podniku, podnikové cíle a cíle IS. Musí být jednoduchá a srozumitelná, je to jakýsi skelet, na který se navěšují další funkce systému. 3 vrstvy v architektuře IS: Vrstva prostředí ekonomické prostředí, legislativa, organizační struktura, personální kapacity a jejich kvalifikace. Vrstva aplikační provozované a řešené projekty, jejich dokumentace, funkční a datové specifikace, organizační pravidla jejich řešení a provozu, aplikační SW. Vrstva technologická návrh a provoz počítačových sítí, vymezení jednotlivých komponent IT (ZSW, technické prostředky včetně jejich vazeb a vnitřní struktury).

Globální EIS (Executive IS) podpora vrcholového řízenídwh (Data warehouse) podpora řízení na základě analýz rozsáhlých dat. MIS (Management IS) podpora taktické a operativní úrovně řízení (účetnictví, nákup, prodej, sklad, ). TPS (Transaction processing system) spojený s typem provozu v rámci dané organizace (dílenské, skladové, podniků, rezervační systémy dopravních společností). CIS (Customer IS) zajišťuje bezprostřední styk se zákazníkem. GIS (Geographic IS) CAD (Computer aided design), CAM (Comp aided manufacturing) OIS (Office IS), EDI (Electronic data interchange)

Dílčí Funkční - funkční struktura Procesní - zachycuje procesy, diagramy toků dat, síťový diagram Datová - interní a externí, návrh entit, datových souborů Softwarová - ASW, ZSW, systémový SW Technická - všechny prostředky ICT Organizační - organizační struktura a organizační jednotky Personální - profesní struktury

Informační systém Informační systém organizace je systém informačních technologií, dat a lidí, jehož cílem je efektivní podpora informačních a rozhodovacích procesů na všech úrovních řízení organizace (firmy). Vývoj a provoz IS jsou ovlivňovány řadou aspektů. Podporují podnikové procesy organizace: objednávky, fakturace, nákup, prodej, skladové hospodářství

Metodika Projektování software proces tvorby nového SW a jeho uvedení do provozu. Proces je řízen a má určitá pravidla a doporučení, kterými se při vývoji řídíme => metodiku Metodika říká kdo, kdy, co a proč má dělat během vývoje a provozu SW. Metodika je doporučený souhrn principů, konceptů, dokumentů, metod, technik a nástrojů pro tvůrce softwarových (informačních) systémů, který pokrývá celý životní cyklus informačních systémů Např. RUP, MDIS, Jackson Structured programming

Metoda, technika, nástroj Metoda říká, co je třeba dělat v určité fázi nebo činnosti vývoje a provozu. např. testování software Technika určuje, jak dělat danou činnost, vymezuje pro činnost přesná pravidla. Předurčuje způsob uvažování a vyjadřování, často spjata s konkrétním nástrojem. OOP, datové modelování, vytváření prototypů Nástroj prostředek k uskutečnění určité činnosti v procesu vývoje a provozu SW. CASE nástroje, automatizované testování

Procesní framework Není to konkrétní metodika! Předdefinovaná množina rolí, artefaktů, aktivit Např. dokumenty, modely, Vybere se jen to, co je pro projekt potřebné Vznikly většinou z minulých zkušeností RUP - framework pro tvorbu SW ITIL - framework pro provoz a údržbu stávajícího SW

Agilní metody The Agile Manifesto (http://agilemanifesto.org/) Jednotlivci a součinnost nad procesy a nástroji Fungující software nad komplexní dokumentací Spolupráce se zákazníkem nad vyjednávání o kontraktu Odpověď na změnu nad následováním plánu Klíčový bod: iterativní a inkrementální vývoj s prioritou (založeny na rizicích a přínosech pro byznys) úkolů!

Agilní metody Extreme Programming - XP Scrum Crystal Clear Lean Development (můžete znát z Toyoty) Feature-Driven Development (FDD) Test-Driven Development / Behavior-Driven Development

Vodopád vs. Agile

Srovnání Vodopádové principy Zaměřen na procesy, předpokládá jejich opakovatelnost. Pevné, podrobné plány definovány na úvod, kdy je spousta nejasností. Rizika jsou často překvapení, přináší problémy. Integrace a testování až na konci. Změny nejsou vítány. Často zaměřen na tvorbu dokumentů bez přidané hodnoty a jejich revize. Buildy a testy až na konci, často přeskočeno nefunkční testování. Za kvalitu odpovědní pouze testeři, QA manažeři nebo často nikdo. Iterativní (agilní principy) Zaměřen na lidi motivace, komunikace prvořadá. Pro celý projekt pouze road map. Detailní plány jen iterace (kratší úseky, 2 měsíce). Řízen riziky nejrizikovější věci řešíme nejdříve. Průběžná integrace a testování. Počítá se změnami, přijímá je. Zaměřen na fungující SW (hodnota pro zákazníka). Automatizované buildy a testy. Všichni (celý tým) odpovědní za kvalitu produktu.

Železný trojúhelník

Rational Unified Process (RUP) Komplexní nástroj pro řízení vývoje IS UC driven (řízen pomocí UC) - UC je součástí vize projektu Zaměřen na rizika (nejrizikovější věci dělám nejdříve) Iterativní (každá iterace produkuje spustitelný a otestovaný build) Kooperace (analytik, designer, programátor, tester těsně spolupracují) Orientován na architekturu

RUP fáze a disciplíny

Iterace Každá iterace produkuje spustitelný a otestovaný build obsahující nově implementované funkčnosti (scénáře) z důvodu zpětné vazby od uživatele Každá iterace má definovaný přesný cíl, který se snažíme naplnit (paralelní analýza, návrh, implementace a testování vybrané nové funkčnosti jejich scénářů). Iterace je miniprojekt, má svůj začátek, konec a pevně definovaný časový rozsah (2-6 týdnů) což se již předvídá a detailně plánuje lépe, než například 2 roky. V průběhu 1 iterace provádíme všechny disciplíny! Tj. definice požadavků, analýza a návrh, implementace, integrace a testování!!! Zřetězením iterací nabalujeme jednotlivé funkčnosti až do výsledného produktu.

Fáze inception Pochopení problematiky, nastínění funkčností systému (základní UC) Vize Identifikace rizik + akce na jejich snížení / odstranění Návrh možného řešení (architektura) Složení týmu, financování Definice procesu, výběr a nastavení nástrojů

Fáze elaboration Snížení technických rizik Návrh implementace a testování architektury na základě klíčových potřeb (asi 20-30% UC) Výsledek fáze: stabilní, otestovaná architektura Architektura rozhraní subsystémů, komunikační mechanismy, odchytávání výjimek, ukládání dat,

Fáze construction Detailní analýza, návrh, implementace a testování zbývajících 70-80% UC v několika iteracích Využíváme mechanismy definované architekturou Výsledek fáze: beta-release Všechny disciplíny (analýza, návrh, vývoj, testování) jsou v každé iteraci prováděny paralelně

Fáze Transition Beta testování Školení (podpory, uživatelů) Příprava dat a prostředí (souběžný provoz verzí, transformace dat), instalace SW na klientské stanice Další aktivity (marketing, distribuce, prodej, CASE study, white papers, zprávy pro tisk) Lessons learnt - pro zlepšení procesu

Jak to udělat špatně Částečně udělaná práce Extra rysy aplikace (zákazník nikdy nepoužije) Znovu se učení Předávání práce, dokumentů, znalosti Přepínání mezi jednotlivými úkoly (context switching) Zpoždění (čekání na schválení, fronty) Defekty

Jak to udělat dobře TDD Iterative development (feedback, možnost zahrnout v průběhu vývoje změny) UC driven (reuse TC, tracebility) Continuous integration (automatické sestavení + automatický testing) Mále dokumentace + dokumentace návrhu kódem Implementace pouze potřebných požadavků (klíčové potřeby 20% UC) Posunout rozhodnutí