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

Podobné dokumenty
Softwarový proces Bohumír Zoubek 1. říjen 2018

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

SOFT-ENG ACADEMY 2017/2018

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

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

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

Odhady, nabídky, měření a historie

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

Dotazy na event #E256

Agilní metodiky vývoje softwaru

30/10/2017. Odhady, nabídky, měření a historie. Dotazy na event #L554

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

Seznam.cz. Tomáš Pergler. najdu tam, co neznám!

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

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

Agenda. Docházka Odhadování Neohlášený test Vedení projektů Historie projektů

4IT445 - AGILNÍ VÝVOJ WEBOVÝCH APLIKACÍ AGILNÍ METODIKY VÝVOJE SW ING. JAN ČERNÝ

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

Quality assurance a testování

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

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

Agile Software Development

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

Dotazy na event #6334

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

Vedení projektů, Odhadování, historie

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

Odhady, nabídky, měření a historie

Projekt Partner ČSOB Leasing. 02/12/2013 Jaromír Mayer Domain Process Manager Head of Department

Custom Code Management. Přechod na S/4HANA

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

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

B0M33BDT 7. přednáška Architektury a bezpečnost. Marek Sušický Milan Kratochvíl

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

Hodnocení železničních systémů podle Evropských standardů. Doc. Dr. Ing. Tomáš Brandejský Ing. Martin Leso, PhD Fakulta dopravní ČVUT v Praze

XINF1. Jaroslav Žáček

Testing as a Service. Přístupné, flexibilní a cenově výhodné řešení pro ověření kvality softwaru. Kompletní portfolio služeb testování softwaru

Novinky v UML 2.5 a agilní modelování

2 Životní cyklus programového díla

Odstrašující příklady z IT praxe. Jan Vaněk a kolegové

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

Umí HR držet krok s byznysem (zkušenosti z agilního řízení)

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

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

27/11/2017. Business analýza a sběr požadavků. Dotazy na event #G865

Agilní metodiky Agilní Jan Smolík

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

JAK SE PŘIPRAVIT NA GDPR?

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

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

Software Project Management

End-to-end testování. 26. dubna Bořek Zelinka

POČÍTAČE A PROGRAMOVÁNÍ

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

Výběrové řízení. Informační systém Autoklubu ČR. Autoklub České republiky. Strana 1 z 8

Dokumentace, konfigurační řízení

Návrh a management projektu. Řízení a koordinace projektu

AGILNÍ METODIKY VÝVOJE SOFTWARE

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

Software project management

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

Unifikovaný proces vývoje

Agenda. Docházka Návrat k minulému praktickému cvičení Zápočtové práce. Dokumentace. Dotazy, přání, stížnosti. Co, jak a proč dokumentovat

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

Obsah. Úvod 9 Poděkování 10 Co je obsahem této knihy 10 Pro koho je tato kniha určena 11 Zpětná vazba od čtenářů 11 Errata 11

Semestrální práce ke kurzu 4IT421 Zlepšování procesů budování IS. Bc. Zuzana Čecháková, cecz00. Six Ways Agile Can Turn Static

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

Životní cyklus produktu (IS / IT služby) Životní cyklus projektu Životní cyklus řízení projektu. Vývoje produktu Implementace produktu

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

Modely softwarových procesů

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

Projektové řízení Martin Hlavatý / Michal Petřík Prosinec 2018

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

Hodnotocentrické metodiky

Dotazy na event #3873

Energetické služby se zárukou a náležitosti smluvního vztahu

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

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

B0M33BDT Technologie pro velká data. Supercvičení SQL, Python, Linux

Y13ANW ÚVOD DO WEBOVÝCH METODIK. Ing. Martin Molhanec, CSc.

Zkušenosti z implementace SuccessFactors v ČSOB. Martin Beran, ČSOB

Česká letecká servisní a. s.

Agilní metodiky a vývojové procesy

Spark SQL, Spark Streaming. Jan Hučín

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

Identifikace změny Definice změny a jejího rozsahu a dopadu Schválení změny Prioritizace změn Úprava plánu projektu

Moderní přístup k návrhu produktové nabídky a schvalování úvěrových produktů v reálném čase.

SOFTWAROVÉ INŽENÝRSTVÍ 1

Agilní metodiky a techniky. analýza a vývoj IS

Zbyněk Zelinka, xzelz06 Miroslav Horňák, xhorm90. Use DevOps to Drive Your Agile ALM

Iterativní vývoj software KIV/ASWI 2014/2015

programátor vs. vývojář

Spark SQL, Spark Streaming. Jan Hučín

2. Modelovací jazyk UML 2.1 Struktura UML Diagram tříd Asociace OCL. 3. Smalltalk 3.1 Jazyk Pojmenování

BI-TIS Případová studie


Vývoj řízený testy Test Driven Development

Seznámení s přípravou platformy pro zajištění služeb dodávaní dokumentů včetně MVS: ZÍSKEJ

Jak vytvořit správné Zadání IS

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

Transkript:

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

1 Ú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 vznikl, jejich souslednost, opakování, vstupy a výstupy jednotlivých aktivit a nároky na jejich provedení Vždy je potřeba udělat Specifikaci co bude systém dělat Architekturu a design z jakých kostek a jak se bude systém skládat Implementaci vlastní výroba systému Validaci ověření, že systém dělá co má Další rozvoj úpravy systému na základě měnících se požadavků Software process improvement Ladění a vylepšování procesu 3

Dle plánu nebo agilně? Plánovaný softwarový proces (plan-driven) Aktivity jsou plánovány dopředu Pokrok je měřen porovnáním stavu a plánu Větší režie v případě změn Agilní softwarový proces Plánování je jen po malých částech Snadné změny kurzu v případě změn požadavků zákazníků Typický proces v Profinitu obsahuje Plánované aktivity Prvky agilního přístupu 4

2 Modely softwarového procesu

Waterfall o Oddělené fáze Analýza požadavků Design Implementace Testování Provoz a údržba o Výhody Jasně definovaný plán Predikovatelnost (čas, rozsah, cena) Snadná koordinace práce o Nevýhody Nutno chápat co se chce již na začátku Reakce na změny (požadavků, termínů,...) Rychlost dodávky (kdy zákazník něco uvidí od zadání) 6

Iterativní o Změny oproti vodopádu Několik verzí systému Jednotlivé verze se dělají vodopádem o Výhody Jasně definovaný plán Predikovatelnost (čas, rozsah, cena) Snadná koordinace práce Zákazník má přístup k verzím/prototypům, čili vidí co dostane o Nevýhody Nutno chápat co se chce na již začátku, možné změny do dalších verzí Reakce na změny (požadavků, termínů,...) Lepší než vodopád, ale změny nejsou dodány rychle Rychlost dodávky (kdy zákazník něco uvidí od zadání) 7

Agilní (Scrum apod.) 8

Princip

2 Modely z různých pohledů

Flexibilita Flexibilita Reakce na změny Rychlost a náklady Vodopád Velmi nepružný Vysoké náklady Iterativní Lze zakomponovat změny do další iterace Náklady nižší než u vodopádu Agilní Snadné, očekávají změny Náklady na změny velmi nízké 11

Predikovatelnost Predikovatelnost Vím, co dostanu Kdy Kolik mě to bude stát Vodopád Vysoká, jedeme dle plánu Iterativní Vysoká, máme plán Agilní Nízká, plán jen na krátké období Víme tedy jen co dostaneme např. během dalšího sprintu 12

Architektura a design Architektura a design Dobře navržený systém Konzistentní dodržování principů návrhu Vodopád Vysoká Iterativní Vysoká Riziko zanesení problémů při dalších iteracích Agilní Nízká Riziko zanesení problémů při každém sprintu 13

Implementace Implementace Prostor pro dodání kvalitního díla Požadavky na programátory Vodopád Kvalitní, dost prostoru pro QA Revize, coding standards,... Iterativní Kvalitní, dost prostoru pro QA Revize, coding standards,... Riziko zanesení problémů při dalších iteracích Agilní Nutný kvalitní tým, může být problematická Riziko nekvalitní práce, když není prostor na revize 14

Dokumentace Dokumentace Mám kvalitní a konzistentní dokumentaci systému Vodopád Typicky OK Iterativní Nutno dodržet napříč verzemi (jedna pravda či více verzí?) Agilní Nízká Obtížné udržovat napříč sprinty 15

Spolupráce se zákazníkem Požadavky na součinnost Jak moc a často se musí zákazník podílet na projektu Vodopád nebo iterativní V přesně definovaných okamžicích Lze dobře plánovat Agilní V průběhu celého projektu Velké riziko selhání, pokud nebude 16

Smlouva na dodávku Smlouva na dodávku díla Lze model využít pro dodávku FTFP? Vodopád Ano Iterativní Ano, nutno ošetřit rozsah verzí Agilní Ne, požadavky nejsou dopředu známy Aktuální modely fungování nákupu tomu nejsou nakloněny 17

3 Který model vybrat?

Který vybrat? Vodopád Téměř nepoužíváme pro již uvedené typy projektů (jen pro menší změny) Iterativní Nejčastěji používaný pro většinu systémů našich zákazníků Jak iniciální rozvoj tak údržba Predikovatelnost důležitější než flexibilita Lze na velké systémy Agilní (vývoj nebo dodávky?) Produktový vývoj Vývoj v rámci firmy, kde je jasná ochota lidí se na tom podílet Spíše na menší projekty nebo na některé části procesu (např. jen vývoj) 19

Věci ke zvážení Systém Typ a velikost Očekávaná životnost systému Tým dodavatele Znalosti a zkušenosti týmu Schopnost pracovat agilně Agilně Ne vždy a ne všechno Nesmí být zástěrkou pro chaos 20

4 Příklady procesu

Iterativní Core systém Iterativní proces dodávky systému na zelené louce (3 verze) Iterativní proces údržby Ukázka harmonogramu Online systém sjednání pojištění Iterativní Ukázka harmonogramu Internetové bankovnictví Iterativní 4 release ročně Paralelně práce na až 3 release Ukázka 22

Ne-agilní Vývoj internetového bankovnictví 2 problematické projekty Nejasné/nepřipravené zadání Nedělají se odhady Neexistující dokumentace Spotřeba MD mnohem větší, než bylo třeba (2-5x) Core systém pro pojišťovnu Aplikace agilního přístupu i na analýzu v rámci údržby Omezení na délku Scrum sprintu, když nejde rozdělit na menší části 23

Volba správného procesu http://foto.mapy.cz/10380-nedokonceny-most

https://www.profinit.eu/univerzity/material-sweng/project-and-process/ 25

Diskuze 26

Děkujeme za pozornost Profinit, s.r.o. Tychonova 2, 160 00 Praha 6 Telefon + 420 224 316 016 Web www.profinit.eu LinkedIn linkedin.com/company/profinit Twitter twitter.com/profinit_eu