SlideShare une entreprise Scribd logo
1  sur  40
Télécharger pour lire hors ligne
Úvod do programování aneb Do nitra stroje
PŘEDNÁŠKA                       Karel Minařík
            6
1   Opakování




                Úvod do programování
DOMÁCÍ ÚKOL

Navrhněte a naprogramujte třídu TextAnalyzer

TextAnalyzer:
  text
•
• characters
• words
• pages
• unique_words
• most_frequent_words
• most_frequent_word




                                        Úvod do programování Přednáška 6
˚
DULEŽITÉ SOUČÁSTI VÝVOJE SOFTWARE

1. Dokumentace
  # = Obecna trida pro definici zvirat
  # Od teto tridy jsou odvozena dalsi zvrata jako je Dog, Sheep, atd.
  class Animal
  ...
    # Nakrmi zvire --zvysi hodnotu +stuff_in_belly+. Pokud je hodnota vyssi nez 3 zavola metodu Animal.poop
    def feed
    ...
  end
  % doc animals.rb --main Animal



2. Testování funkčnosti Unit testing, functional testing, ...
   require 'test/unit'
   class TestTextAnalyzer < Test::Unit::TestCase
     def test_num_characters
       assert_equal( 0, TextAnalyzer.new(quot;quot;).characters )
     end
   end




3. Testování výkonu Benchmarking
  require 'benchmark'
  b = Benchmark.measure do
    100.times do
      Person.create( :name => 'John', :surname => 'Smith', :email => 'smith@hotmail.com'   )
    end
  end




                                                                                      Úvod do programování Přednáška 6
2   Vedení softwarového projektu




                                   Úvod do programování
Jak fungují projekty v IT?




                       Úvod do programování Přednáška 6
Jak zákazník vysvětlil, co potřebuje...




                                          Úvod do programování Přednáška 6
Jak tomu porozuměl obchodník...




                                  Úvod do programování Přednáška 6
Jak to navrhnul analytik...




                              Úvod do programování Přednáška 6
Jak to popsal zákazníkovi obchodník...




                                         Úvod do programování Přednáška 6
Co dodali programátoři...




                            Úvod do programování Přednáška 6
Jak vypadala dokumentace...




                              Úvod do programování Přednáška 6
Co bylo zákazníkovi vyfakturováno...




                                       Úvod do programování Přednáška 6
Kdy byl projekt předán...




                            Úvod do programování Přednáška 6
Co zákazník skutečně potřeboval...

                            Úvod do programování Přednáška 6
Definovaný proces × Empirický proces
Definovaný proces přináší stále tytéž
   výsledky při dodržení týchž postupů
Empirický proces se musí neustále adaptovat
           na měnící se podmínky




                                    Úvod do programování Přednáška 6
Vývoj software je empirický proces




                          Úvod do programování Přednáška 6
FAKT: Průměrný projekt zabere
až dvakrát tolik času, než bylo
     původně plánováno
  — The Standish Group CHAOS Database, 2004
         www.infoq.com/articles/chaos-1998-failure-stats




                                                           Úvod do programování Přednáška 6
Úvod do programování Přednáška 6
Úvod do programování Přednáška 6
„Změna“
„Změna“
aneb čeho se programátoři nejvíce bojí...
˚
METODIKY VEDENÍ PROJEKTU

„Vodopádový“ model Waterfall
„Spirálový“ model Spiral
Iterativní a inkrementální model Iterative

Agilní vývoj Agile development




                                             Úvod do programování Přednáška 6
Agilní vývoj
www.agilemanifesto.org




                         Úvod do programování Přednáška 6
Osobnosti a komunikace místo procesů a nástrojů
     Fungující software místo rozsáhlé dokumentace
Spolupráce se zákazníkem místo smlouvání a vyjednávání
  Vyrovnávání se se změnami místo dodržování plánu




                                              Úvod do programování Přednáška 6
Principy Manifestu agilního vývoje


            Sledujeme tyto principy:
Naší nejvyšší prioritou je uspokojit zákazníka tím,
že mu dodáváme hodnotný software co nejčastěji
                   a nepřetržitě.
Vítáme požadavky na změny, i když přicházejí ke
konci vývoje. Agilní procesy využívají změnu ke
    zvýšení konkurenceschopnosti zákazníka.
Dodáváme fungující software co nejčastěji, jednou
  za pár týdnů či měsíců. Čím dříve, tím lépe.
   Lidé z obchodu a vývojáři se musí setkávat a
 pracovat spolu denně v průběhu celého projektu.
                        …




                                                  Úvod do programování Přednáška 6
Návrh

  Implementace

Testování/Nasazení


                 Úvod do programování Přednáška 6
Návrh

FÁZE 1                        • Katalog produktů
           Implementace

         Testování/Nasazení



               Návrh
                              • Košík
FÁZE 2     Implementace
                              • Objednávka
         Testování/Nasazení



               Návrh
                              • Historie objednávek
FÁZE 3     Implementace
                              • Platební brána
         Testování/Nasazení




                                      Úvod do programování Přednáška 6
SCRUM




www.mountaingoatsoftware.com/scrum_a_presentation




                                            Úvod do programování Přednáška 6
PRINCIPY METODIKY SCRUM

1. Krátké vývojové cykly — sprints

2. Denní schůzky „vestoje“ — stand-up meetings

3. Revize cyklu — sprint review

4. Stručný seznam funkcí k implementaci — sprint back-log




                                                            Úvod do programování Přednáška 6
„User stories“




www.agilemodeling.com/artifacts/userStory.htm



                                            Úvod do programování Přednáška 6
Úvod do programování Přednáška 6
Ganttův diagram (Gantt chart)

                                Úvod do programování Přednáška 6
Plánování je důležité zejména v krizi




                             Úvod do programování Přednáška 6
Úspěch projektu je týmová záležitost
 Role jednotlivce je velmi omezená




                                Úvod do programování Přednáška 6
Ale… cokoliv projektový manažer
přinese do týmu — dobrého nebo
 zlého — „nakazí“ zbytek týmu




                             Úvod do programování Přednáška 6
Děkuji!
 

Contenu connexe

Similaire à Úvod do programování 6

JIRA addon Portfolio
JIRA addon PortfolioJIRA addon Portfolio
JIRA addon PortfolioOnlio
 
SEO Restart 2024: Martina Zrzavá Libřická - SEO & DEV: Jak na vývojáře od poc...
SEO Restart 2024: Martina Zrzavá Libřická - SEO & DEV: Jak na vývojáře od poc...SEO Restart 2024: Martina Zrzavá Libřická - SEO & DEV: Jak na vývojáře od poc...
SEO Restart 2024: Martina Zrzavá Libřická - SEO & DEV: Jak na vývojáře od poc...Taste
 
SEO & DEV - Jak na vývojáře od pochopení procesů po efektivní komunikaci
SEO & DEV - Jak na vývojáře od pochopení procesů po efektivní komunikaciSEO & DEV - Jak na vývojáře od pochopení procesů po efektivní komunikaci
SEO & DEV - Jak na vývojáře od pochopení procesů po efektivní komunikaciMartiSEO
 
Knop Ceska Sporitelna
Knop Ceska SporitelnaKnop Ceska Sporitelna
Knop Ceska Sporitelnaguesta09d518
 
Uživatelské testování webu NAVRCHOLU.cz
Uživatelské testování webu NAVRCHOLU.czUživatelské testování webu NAVRCHOLU.cz
Uživatelské testování webu NAVRCHOLU.czSherpas
 
2018 11-28 snidane-serie-kuchyne
2018 11-28 snidane-serie-kuchyne2018 11-28 snidane-serie-kuchyne
2018 11-28 snidane-serie-kuchyneProfinit
 
2019 09-23-snidane qa-public
2019 09-23-snidane qa-public2019 09-23-snidane qa-public
2019 09-23-snidane qa-publicProfinit
 
Úvod do analýzy - 2 část
Úvod do analýzy -  2 částÚvod do analýzy -  2 část
Úvod do analýzy - 2 částMartin Paták
 
Efektivní vývoj produktů a prioritizace backlogu
Efektivní vývoj produktů a prioritizace backloguEfektivní vývoj produktů a prioritizace backlogu
Efektivní vývoj produktů a prioritizace backloguDesingdev
 
Monitoring zamereny na vysledky a evaluace
Monitoring zamereny na vysledky a evaluace Monitoring zamereny na vysledky a evaluace
Monitoring zamereny na vysledky a evaluace Inka Pibilova
 
W2 Proc Si It A Bus Nerozumi
W2 Proc Si It A Bus NerozumiW2 Proc Si It A Bus Nerozumi
W2 Proc Si It A Bus Nerozumiguesta09d518
 
COEX eBrana workshop - Příprava větších projektů
COEX eBrana workshop - Příprava větších projektůCOEX eBrana workshop - Příprava větších projektů
COEX eBrana workshop - Příprava větších projektůIvos Gajdorus
 
Diplomová práce - Podnikatelský plán internetového startupu a jeho realizace ...
Diplomová práce - Podnikatelský plán internetového startupu a jeho realizace ...Diplomová práce - Podnikatelský plán internetového startupu a jeho realizace ...
Diplomová práce - Podnikatelský plán internetového startupu a jeho realizace ...Roman Sterly
 

Similaire à Úvod do programování 6 (20)

JIRA addon Portfolio
JIRA addon PortfolioJIRA addon Portfolio
JIRA addon Portfolio
 
SEO Restart 2024: Martina Zrzavá Libřická - SEO & DEV: Jak na vývojáře od poc...
SEO Restart 2024: Martina Zrzavá Libřická - SEO & DEV: Jak na vývojáře od poc...SEO Restart 2024: Martina Zrzavá Libřická - SEO & DEV: Jak na vývojáře od poc...
SEO Restart 2024: Martina Zrzavá Libřická - SEO & DEV: Jak na vývojáře od poc...
 
SEO & DEV - Jak na vývojáře od pochopení procesů po efektivní komunikaci
SEO & DEV - Jak na vývojáře od pochopení procesů po efektivní komunikaciSEO & DEV - Jak na vývojáře od pochopení procesů po efektivní komunikaci
SEO & DEV - Jak na vývojáře od pochopení procesů po efektivní komunikaci
 
Knop Ceska Sporitelna
Knop Ceska SporitelnaKnop Ceska Sporitelna
Knop Ceska Sporitelna
 
Uživatelské testování webu NAVRCHOLU.cz
Uživatelské testování webu NAVRCHOLU.czUživatelské testování webu NAVRCHOLU.cz
Uživatelské testování webu NAVRCHOLU.cz
 
2018 11-28 snidane-serie-kuchyne
2018 11-28 snidane-serie-kuchyne2018 11-28 snidane-serie-kuchyne
2018 11-28 snidane-serie-kuchyne
 
Best Project Management 2008 Souhrn
Best Project Management 2008 SouhrnBest Project Management 2008 Souhrn
Best Project Management 2008 Souhrn
 
2019 09-23-snidane qa-public
2019 09-23-snidane qa-public2019 09-23-snidane qa-public
2019 09-23-snidane qa-public
 
Progress Is
Progress IsProgress Is
Progress Is
 
Úvod do analýzy - 2 část
Úvod do analýzy -  2 částÚvod do analýzy -  2 část
Úvod do analýzy - 2 část
 
Efektivní vývoj produktů a prioritizace backlogu
Efektivní vývoj produktů a prioritizace backloguEfektivní vývoj produktů a prioritizace backlogu
Efektivní vývoj produktů a prioritizace backlogu
 
Monitoring zamereny na vysledky a evaluace
Monitoring zamereny na vysledky a evaluace Monitoring zamereny na vysledky a evaluace
Monitoring zamereny na vysledky a evaluace
 
Cyrani2
Cyrani2Cyrani2
Cyrani2
 
W2 Proc Si It A Bus Nerozumi
W2 Proc Si It A Bus NerozumiW2 Proc Si It A Bus Nerozumi
W2 Proc Si It A Bus Nerozumi
 
W2 Proc Si It A Bus Nerozumi
W2 Proc Si It A Bus NerozumiW2 Proc Si It A Bus Nerozumi
W2 Proc Si It A Bus Nerozumi
 
Kalandra M I C O S Final
Kalandra  M I C O S FinalKalandra  M I C O S Final
Kalandra M I C O S Final
 
PLATTER - Jan Hutar
PLATTER - Jan HutarPLATTER - Jan Hutar
PLATTER - Jan Hutar
 
COEX eBrana workshop - Příprava větších projektů
COEX eBrana workshop - Příprava větších projektůCOEX eBrana workshop - Příprava větších projektů
COEX eBrana workshop - Příprava větších projektů
 
Jak na úspěšný (digitální) projekt?
Jak na úspěšný (digitální) projekt?Jak na úspěšný (digitální) projekt?
Jak na úspěšný (digitální) projekt?
 
Diplomová práce - Podnikatelský plán internetového startupu a jeho realizace ...
Diplomová práce - Podnikatelský plán internetového startupu a jeho realizace ...Diplomová práce - Podnikatelský plán internetového startupu a jeho realizace ...
Diplomová práce - Podnikatelský plán internetového startupu a jeho realizace ...
 

Plus de Karel Minarik

Vizualizace dat a D3.js [EUROPEN 2014]
Vizualizace dat a D3.js [EUROPEN 2014]Vizualizace dat a D3.js [EUROPEN 2014]
Vizualizace dat a D3.js [EUROPEN 2014]Karel Minarik
 
Elasticsearch (Rubyshift 2013)
Elasticsearch (Rubyshift 2013)Elasticsearch (Rubyshift 2013)
Elasticsearch (Rubyshift 2013)Karel Minarik
 
Elasticsearch in 15 Minutes
Elasticsearch in 15 MinutesElasticsearch in 15 Minutes
Elasticsearch in 15 MinutesKarel Minarik
 
Realtime Analytics With Elasticsearch [New Media Inspiration 2013]
Realtime Analytics With Elasticsearch [New Media Inspiration 2013]Realtime Analytics With Elasticsearch [New Media Inspiration 2013]
Realtime Analytics With Elasticsearch [New Media Inspiration 2013]Karel Minarik
 
Elasticsearch And Ruby [RuPy2012]
Elasticsearch And Ruby [RuPy2012]Elasticsearch And Ruby [RuPy2012]
Elasticsearch And Ruby [RuPy2012]Karel Minarik
 
Shell's Kitchen: Infrastructure As Code (Webexpo 2012)
Shell's Kitchen: Infrastructure As Code (Webexpo 2012)Shell's Kitchen: Infrastructure As Code (Webexpo 2012)
Shell's Kitchen: Infrastructure As Code (Webexpo 2012)Karel Minarik
 
Elastic Search: Beyond Ordinary Fulltext Search (Webexpo 2011 Prague)
Elastic Search: Beyond Ordinary Fulltext Search (Webexpo 2011 Prague)Elastic Search: Beyond Ordinary Fulltext Search (Webexpo 2011 Prague)
Elastic Search: Beyond Ordinary Fulltext Search (Webexpo 2011 Prague)Karel Minarik
 
Your Data, Your Search, ElasticSearch (EURUKO 2011)
Your Data, Your Search, ElasticSearch (EURUKO 2011)Your Data, Your Search, ElasticSearch (EURUKO 2011)
Your Data, Your Search, ElasticSearch (EURUKO 2011)Karel Minarik
 
Redis — The AK-47 of Post-relational Databases
Redis — The AK-47 of Post-relational DatabasesRedis — The AK-47 of Post-relational Databases
Redis — The AK-47 of Post-relational DatabasesKarel Minarik
 
CouchDB – A Database for the Web
CouchDB – A Database for the WebCouchDB – A Database for the Web
CouchDB – A Database for the WebKarel Minarik
 
Spoiling The Youth With Ruby (Euruko 2010)
Spoiling The Youth With Ruby (Euruko 2010)Spoiling The Youth With Ruby (Euruko 2010)
Spoiling The Youth With Ruby (Euruko 2010)Karel Minarik
 
Verzovani kodu s Gitem (Karel Minarik)
Verzovani kodu s Gitem (Karel Minarik)Verzovani kodu s Gitem (Karel Minarik)
Verzovani kodu s Gitem (Karel Minarik)Karel Minarik
 
Představení Ruby on Rails [Junior Internet]
Představení Ruby on Rails [Junior Internet]Představení Ruby on Rails [Junior Internet]
Představení Ruby on Rails [Junior Internet]Karel Minarik
 
Efektivni vyvoj webovych aplikaci v Ruby on Rails (Webexpo)
Efektivni vyvoj webovych aplikaci v Ruby on Rails (Webexpo)Efektivni vyvoj webovych aplikaci v Ruby on Rails (Webexpo)
Efektivni vyvoj webovych aplikaci v Ruby on Rails (Webexpo)Karel Minarik
 
Úvod do Ruby on Rails
Úvod do Ruby on RailsÚvod do Ruby on Rails
Úvod do Ruby on RailsKarel Minarik
 
Úvod do programování 7
Úvod do programování 7Úvod do programování 7
Úvod do programování 7Karel Minarik
 
Úvod do programování 5
Úvod do programování 5Úvod do programování 5
Úvod do programování 5Karel Minarik
 
Úvod do programování 3 (to be continued)
Úvod do programování 3 (to be continued)Úvod do programování 3 (to be continued)
Úvod do programování 3 (to be continued)Karel Minarik
 
Historie programovacích jazyků
Historie programovacích jazykůHistorie programovacích jazyků
Historie programovacích jazykůKarel Minarik
 
Interaktivita, originalita a návrhové vzory
Interaktivita, originalita a návrhové vzoryInteraktivita, originalita a návrhové vzory
Interaktivita, originalita a návrhové vzoryKarel Minarik
 

Plus de Karel Minarik (20)

Vizualizace dat a D3.js [EUROPEN 2014]
Vizualizace dat a D3.js [EUROPEN 2014]Vizualizace dat a D3.js [EUROPEN 2014]
Vizualizace dat a D3.js [EUROPEN 2014]
 
Elasticsearch (Rubyshift 2013)
Elasticsearch (Rubyshift 2013)Elasticsearch (Rubyshift 2013)
Elasticsearch (Rubyshift 2013)
 
Elasticsearch in 15 Minutes
Elasticsearch in 15 MinutesElasticsearch in 15 Minutes
Elasticsearch in 15 Minutes
 
Realtime Analytics With Elasticsearch [New Media Inspiration 2013]
Realtime Analytics With Elasticsearch [New Media Inspiration 2013]Realtime Analytics With Elasticsearch [New Media Inspiration 2013]
Realtime Analytics With Elasticsearch [New Media Inspiration 2013]
 
Elasticsearch And Ruby [RuPy2012]
Elasticsearch And Ruby [RuPy2012]Elasticsearch And Ruby [RuPy2012]
Elasticsearch And Ruby [RuPy2012]
 
Shell's Kitchen: Infrastructure As Code (Webexpo 2012)
Shell's Kitchen: Infrastructure As Code (Webexpo 2012)Shell's Kitchen: Infrastructure As Code (Webexpo 2012)
Shell's Kitchen: Infrastructure As Code (Webexpo 2012)
 
Elastic Search: Beyond Ordinary Fulltext Search (Webexpo 2011 Prague)
Elastic Search: Beyond Ordinary Fulltext Search (Webexpo 2011 Prague)Elastic Search: Beyond Ordinary Fulltext Search (Webexpo 2011 Prague)
Elastic Search: Beyond Ordinary Fulltext Search (Webexpo 2011 Prague)
 
Your Data, Your Search, ElasticSearch (EURUKO 2011)
Your Data, Your Search, ElasticSearch (EURUKO 2011)Your Data, Your Search, ElasticSearch (EURUKO 2011)
Your Data, Your Search, ElasticSearch (EURUKO 2011)
 
Redis — The AK-47 of Post-relational Databases
Redis — The AK-47 of Post-relational DatabasesRedis — The AK-47 of Post-relational Databases
Redis — The AK-47 of Post-relational Databases
 
CouchDB – A Database for the Web
CouchDB – A Database for the WebCouchDB – A Database for the Web
CouchDB – A Database for the Web
 
Spoiling The Youth With Ruby (Euruko 2010)
Spoiling The Youth With Ruby (Euruko 2010)Spoiling The Youth With Ruby (Euruko 2010)
Spoiling The Youth With Ruby (Euruko 2010)
 
Verzovani kodu s Gitem (Karel Minarik)
Verzovani kodu s Gitem (Karel Minarik)Verzovani kodu s Gitem (Karel Minarik)
Verzovani kodu s Gitem (Karel Minarik)
 
Představení Ruby on Rails [Junior Internet]
Představení Ruby on Rails [Junior Internet]Představení Ruby on Rails [Junior Internet]
Představení Ruby on Rails [Junior Internet]
 
Efektivni vyvoj webovych aplikaci v Ruby on Rails (Webexpo)
Efektivni vyvoj webovych aplikaci v Ruby on Rails (Webexpo)Efektivni vyvoj webovych aplikaci v Ruby on Rails (Webexpo)
Efektivni vyvoj webovych aplikaci v Ruby on Rails (Webexpo)
 
Úvod do Ruby on Rails
Úvod do Ruby on RailsÚvod do Ruby on Rails
Úvod do Ruby on Rails
 
Úvod do programování 7
Úvod do programování 7Úvod do programování 7
Úvod do programování 7
 
Úvod do programování 5
Úvod do programování 5Úvod do programování 5
Úvod do programování 5
 
Úvod do programování 3 (to be continued)
Úvod do programování 3 (to be continued)Úvod do programování 3 (to be continued)
Úvod do programování 3 (to be continued)
 
Historie programovacích jazyků
Historie programovacích jazykůHistorie programovacích jazyků
Historie programovacích jazyků
 
Interaktivita, originalita a návrhové vzory
Interaktivita, originalita a návrhové vzoryInteraktivita, originalita a návrhové vzory
Interaktivita, originalita a návrhové vzory
 

Úvod do programování 6

  • 1. Úvod do programování aneb Do nitra stroje PŘEDNÁŠKA Karel Minařík 6
  • 2. 1 Opakování Úvod do programování
  • 3. DOMÁCÍ ÚKOL Navrhněte a naprogramujte třídu TextAnalyzer TextAnalyzer: text • • characters • words • pages • unique_words • most_frequent_words • most_frequent_word Úvod do programování Přednáška 6
  • 4. ˚ DULEŽITÉ SOUČÁSTI VÝVOJE SOFTWARE 1. Dokumentace # = Obecna trida pro definici zvirat # Od teto tridy jsou odvozena dalsi zvrata jako je Dog, Sheep, atd. class Animal ... # Nakrmi zvire --zvysi hodnotu +stuff_in_belly+. Pokud je hodnota vyssi nez 3 zavola metodu Animal.poop def feed ... end % doc animals.rb --main Animal 2. Testování funkčnosti Unit testing, functional testing, ... require 'test/unit' class TestTextAnalyzer < Test::Unit::TestCase def test_num_characters assert_equal( 0, TextAnalyzer.new(quot;quot;).characters ) end end 3. Testování výkonu Benchmarking require 'benchmark' b = Benchmark.measure do 100.times do Person.create( :name => 'John', :surname => 'Smith', :email => 'smith@hotmail.com' ) end end Úvod do programování Přednáška 6
  • 5. 2 Vedení softwarového projektu Úvod do programování
  • 6.
  • 7. Jak fungují projekty v IT? Úvod do programování Přednáška 6
  • 8. Jak zákazník vysvětlil, co potřebuje... Úvod do programování Přednáška 6
  • 9. Jak tomu porozuměl obchodník... Úvod do programování Přednáška 6
  • 10. Jak to navrhnul analytik... Úvod do programování Přednáška 6
  • 11. Jak to popsal zákazníkovi obchodník... Úvod do programování Přednáška 6
  • 12. Co dodali programátoři... Úvod do programování Přednáška 6
  • 13. Jak vypadala dokumentace... Úvod do programování Přednáška 6
  • 14. Co bylo zákazníkovi vyfakturováno... Úvod do programování Přednáška 6
  • 15. Kdy byl projekt předán... Úvod do programování Přednáška 6
  • 16. Co zákazník skutečně potřeboval... Úvod do programování Přednáška 6
  • 17. Definovaný proces × Empirický proces
  • 18. Definovaný proces přináší stále tytéž výsledky při dodržení týchž postupů Empirický proces se musí neustále adaptovat na měnící se podmínky Úvod do programování Přednáška 6
  • 19. Vývoj software je empirický proces Úvod do programování Přednáška 6
  • 20. FAKT: Průměrný projekt zabere až dvakrát tolik času, než bylo původně plánováno — The Standish Group CHAOS Database, 2004 www.infoq.com/articles/chaos-1998-failure-stats Úvod do programování Přednáška 6
  • 21. Úvod do programování Přednáška 6
  • 22. Úvod do programování Přednáška 6
  • 24. „Změna“ aneb čeho se programátoři nejvíce bojí...
  • 25. ˚ METODIKY VEDENÍ PROJEKTU „Vodopádový“ model Waterfall „Spirálový“ model Spiral Iterativní a inkrementální model Iterative Agilní vývoj Agile development Úvod do programování Přednáška 6
  • 26. Agilní vývoj www.agilemanifesto.org Úvod do programování Přednáška 6
  • 27. Osobnosti a komunikace místo procesů a nástrojů Fungující software místo rozsáhlé dokumentace Spolupráce se zákazníkem místo smlouvání a vyjednávání Vyrovnávání se se změnami místo dodržování plánu Úvod do programování Přednáška 6
  • 28. Principy Manifestu agilního vývoje Sledujeme tyto principy: Naší nejvyšší prioritou je uspokojit zákazníka tím, že mu dodáváme hodnotný software co nejčastěji a nepřetržitě. Vítáme požadavky na změny, i když přicházejí ke konci vývoje. Agilní procesy využívají změnu ke zvýšení konkurenceschopnosti zákazníka. Dodáváme fungující software co nejčastěji, jednou za pár týdnů či měsíců. Čím dříve, tím lépe. Lidé z obchodu a vývojáři se musí setkávat a pracovat spolu denně v průběhu celého projektu. … Úvod do programování Přednáška 6
  • 29. Návrh Implementace Testování/Nasazení Úvod do programování Přednáška 6
  • 30. Návrh FÁZE 1 • Katalog produktů Implementace Testování/Nasazení Návrh • Košík FÁZE 2 Implementace • Objednávka Testování/Nasazení Návrh • Historie objednávek FÁZE 3 Implementace • Platební brána Testování/Nasazení Úvod do programování Přednáška 6
  • 31. SCRUM www.mountaingoatsoftware.com/scrum_a_presentation Úvod do programování Přednáška 6
  • 32. PRINCIPY METODIKY SCRUM 1. Krátké vývojové cykly — sprints 2. Denní schůzky „vestoje“ — stand-up meetings 3. Revize cyklu — sprint review 4. Stručný seznam funkcí k implementaci — sprint back-log Úvod do programování Přednáška 6
  • 34. Úvod do programování Přednáška 6
  • 35. Ganttův diagram (Gantt chart) Úvod do programování Přednáška 6
  • 36. Plánování je důležité zejména v krizi Úvod do programování Přednáška 6
  • 37. Úspěch projektu je týmová záležitost Role jednotlivce je velmi omezená Úvod do programování Přednáška 6
  • 38. Ale… cokoliv projektový manažer přinese do týmu — dobrého nebo zlého — „nakazí“ zbytek týmu Úvod do programování Přednáška 6
  • 39.