LEKKIE METODOLOGIE WYTWARZANIA OPROGRAMOWANIA



Podobne dokumenty
INŻYNIERIA OPROGRAMOWANIA LAB 1

Marcin Kucięba Agile Development

The Agile Way Thomson Reuters case study. Małgorzata Kusyk, PMP Managing Partner, AgilePMO Senior Project Manager, Thomson Reuters

INICJATYWA STUDENCKA. Gdańsk,

INICJATYWA STUDENCKA. Gdańsk,

LEKKIE METODOLOGIE WYTWARZANIA OPROGRAMOWANIA

Jarosław Kuchta Dokumentacja i Jakość Oprogramowania. Wymagania jakości w Agile Programming

Metody wytwarzania oprogramowania. Metody wytwarzania oprogramowania 1/31

Metodyki zwinne wytwarzania oprogramowania

Programowanie zwinne

Programowanie zwinne - wprowadzenie. Programowanie ekstremalne. Wstęp Reguły i praktyki SCRUM. Wprowadzenie Role Zdarzenia Artefakty

Modele cyklu życia oprogramowania

Programowanie zespołowe

Projekt Kompetencyjny - założenia

Tworzenie gier na urządzenia mobilne

Zwinne podejście do projektu i produktu Kto? Co? i Jak? Małgorzata Kusyk, PMP, PRINCE2P

Lekkie metodyki. tworzenia oprogramowania

Planowanie i realizacja zadań w zespole Scrum

Akademia ADB Wykład I Praca w grupie i jakość kodu

Dobry Product Backlog Oferta szkolenia dla Product Ownerów

Rok akademicki: 2017/2018 Kod: IIN s Punkty ECTS: 2. Poziom studiów: Studia I stopnia Forma i tryb studiów: Stacjonarne

Modele cyklu życia systemu cd Zasady programowania zwinnego Wykład 3

SYSTEMY INFORMATYCZNE ćwiczenia praktyczne

Podejście zwinne do zarządzania projektami

Feature Driven Development

Projektowanie zwinne

Agile Project Management

NOWE METODYKI PROWADZENIA PROJEKTU

Wsparcie narzędziowe zarządzania ryzykiem w projektach

Dobre wdrożenia IT cz. I Business Case.

Główne założenia XP. Prostota (Simplicity) Komunikacja (Communication) Sprzężenie zwrotne (Feedback) Odwaga (Agressiveness)

Nowe modele zakupowe usług IT w obszarze ochrony zdrowia.

Wykład 2. MIS n Inżynieria oprogramowania Marzec Kazimierz Michalik Akademia Górniczo-Hutnicza im. S. Staszica w Krakowie

Agile Software Development Perspektywa Członka Zespołu

Programowanie Ekstemalne

Metodyka dla projektu SYRIUSZ

Podejście tradycyjne. plan wykonanie sekwencyjna natura wykonywanych zadań

Agile vs PRINCE /2015 I rok st. magisterskie Informatyka

XPrince dla architektów 1

Przewodnik egzaminacyjny. EXIN Agile Scrum. Wydanie

Tematy seminariów wg Roger S. Pressman, Praktyczne podejście do oprogramowania, WNT, Zofia Kruczkiewicz

Prowadzenie projektu programistycznego. Modele tworzenia oprogramowania. Programowanie kaskadowe i zwinne. Wykład 9

Zarządzanie projektami. Wykład 2 Zarządzanie projektem

Tematy seminariów wg Roger S. Pressman, Praktyczne podejście do oprogramowania, WNT, Zofia Kruczkiewicz

Zarządzanie projektami w NGO

Projekt grupowy - opis przedmiotu

Techniki komputerowe w robotyce

LEKKIE METODOLOGIE WYTWARZANIA OPROGRAMOWANIA

CTPARTNERS W LICZBACH ~100% 4,9 >500. kompleksowe obszary zarządzania IT w ofercie. osób przeszkolonych z zakresu IT

ZARZĄDZANIE PROJEKTAMI I PROCESAMI część pierwsza

Zwinne tworzenie aplikacji internetowych typu RIA w środowisku Ruby on Rails

Programowanie Zespołowe

Metodyki programowania. Tomasz Kaszuba 2015

Oceny z prezentacji INKU011S. Zofia Kruczkiewicz

Leszno Jakie są i będą oczekiwania biznesu wobec IT?

DLACZEGO TO DZIAŁA? 21. marca 2012r.

Zarządzanie projektami. Porównanie podstawowych metodyk

Szybkość w biznesie. Zwinne testowanie oprogramowania (Agile) Mateusz Morawski (mateusz.morawski@hp.com) 14 kwietnia 2015

Oferta szkoleń firmy Code Sprinters

RAPORT Z POLSKIEGO BADANIA PROJEKTÓW IT 2010

Wprowadzenie do przedmiotu 1

Temat: Zwinne Zarządzanie Projektami IT (Agile / Scrum) Data: marca 2014 r. (2 dni, czwartek-piątek), godz. 9-16

Skuteczne zarządzanie projektami IT w otoczeniu uczelnianym. Piotr Ogonowski

Agile Project Management WHITEPAPER

kompetencji zawodowych Professional Scrum Master I, Certified Scrum Master I Mirosław Dąbrowski zespół Indeed wprowadzenie Scruma

Zarządzanie projektami. Wykład 1 - Projekt

Projektowanie systemów informatycznych. wykład 6

Scrum. Zwinna metodyka prowadzenia projektów

AGILE BASED COMPETENCY MANAGEMENT

Zarządzanie projektem prawnym w praktyce

CTPARTNERS W LICZBACH ~100% 4,9 >500. kompleksowe obszary zarządzania IT w ofercie. osób przeszkolonych z zakresu IT

Scaling Scrum with SAFe. Małgorzata Czerwińska

Wytwórstwo oprogramowania. michał możdżonek

lub na

NOWE STUDIA PODYPLOMOWE REALIZOWANE WSPÓLNIE PRZEZ WARSZAWSKĄ SZKOŁĘ ZARZĄDZANIA SZKOŁĘ WYŻSZĄ WSPOŁNIE Z FIRMĄ GOWORK.PL

know 5 W, : filary wzrostu WHAT WHEN WHO WHY WHERE model biznesowy

ZARZĄDZANIE PROCESEM TESTOWYM (SQAM Test Manager) 7-8 luty 2008, Warszawa Zdobądź z nami certyfikat SQAM Test Manager.

AGILE PROJECT MANAGEMENT

Programiści i ich harmonijna współpraca jest ważniejsza od procesów i narzędzi

Scrum w praktyce. Michał Piórek

Zarz dzanie Projektami Informatycznymi

Jak być agile w projekcie utrzymaniowym? JOANNA SIEMIŃSKA

Organizacja procesu projektowania, rozwoju i serwisowania systemu wspomagającego zarzadzanie uczelnią

Wstęp do zarządzania projektami

Przyczyny niepowodzeń projektów informatycznych

Efektywne retrospekcje

Praca dyplomowa - magisterska

Inżynieria oprogramowania (Software Engineering)

4. Wprowadzanie Scruma w ImmobilienScout Opis sytuacji

Klasyczna organizacja też może być zwinna! Zarządzaj zwinnie projektami!

Wykład VII. Programowanie III - semestr III Kierunek Informatyka. dr inż. Janusz Słupik. Wydział Matematyki Stosowanej Politechniki Śląskiej

Wprowadzenie do metodyki SCRUM. mgr inż. Remigiusz Samborski Instytut Informatyki Politechnika Wrocławska

Programowanie Zespołowe

szkolenia pod drzewem Wybrane Techniki XP bnd 2008 Tomasz Włodarek. Materiał udostępniany na podstawie licencji Creative Commons (by-nc-nd) 1.00.

UNIWERSYTET WARSZAWSKI WYDZIAŁ ZARZĄDZANIA

SCRUM Product Owner - wstęp do zarządzania produktami

Wprowadzenie do metodologii modelowania systemów informacyjnych. Strategia (1) Strategia (2) Etapy Ŝycia systemu informacyjnego

Data: marzec 2014 r. (2 dni, czwartek-piątek), godz Miejsce: Eureka Technology Park, Innowatorów 8

Umowy w branży IT. Jak je konstuować, żeby uniknąć późniejszych nieporozumień. Tomasz Wiese Łukasz Marszał

Transkrypt:

LEKKIE METODOLOGIE WYTWARZANIA OPROGRAMOWANIA Wykład 2 Wprowadzenie do metodologii lekkich i gry planistycznej Jacek Dajda <dajda@agh.edu.pl> Kraków, 18 października 2007

Plan wykładu Przyczyny powstanie powstania metodologii zwinnych i ich Wprowadzenie do gry planistycznej Strona: 2

Przyczyny powstania metodologii zwinnych

Metafora projektu informatycznego Źródło: http://infohost.nmt.edu/~es421/ansys/bridge.htm Strona: 4

Metafora projektu informatycznego (2) Źródło: http://www.botany.wisc.edu Strona: 5

Kryzys inżynierii oprogramowania Wzrost złożoności systemów informatycznych w latach 70 i 80 zaowocował zaproponowaniem formalnych metod wytwarzania oprogramowania (np. model CMM, norma ISO 9000), które pozwoliły na uporządkowanie skomplikowanego procesu wytwarzania oprogramowania Negatywnymi efektami ubocznymi były m.in. biurokratyzacja całego procesu obniżenie jego odporności na zmiany wydłużenie czasu oczekiwania na pierwsze wersje rozwijanego produktu Strona: 6

Syndrom LOOP LOOP czyli Błędne koło 4 problemy: Late - średnie opoźnienie 6 do 12 miesięcy Over budget - średnio 50% do 100% Overtime Poor quality Dotyka wielu przedsięwzięć informatycznych (nawet Departament Obrony USA) Przekonanie o organizacyjnym samowoli programistow i bałaganie E. Yourdon, Marsz ku klęsce. Poradnik dla projektanta systemów Strona: 7

Raport grupy Standish The Standish Group http://www.standishgroup.com The Standish Group Report Chaos 1995 - dotyczy sektora IT w USA. Raport przynosi bardzo niepokojące wyniki dotyczące powodzenia projektow informatycznych: Kompletnie udane Anulowane Duże 9,00% 29,50% PROJEKTY Średnie 16,20% 37,10% Małe 28,00% 21,60% Wg developerów, najbardziej problematyczne były: brak wsparcia ze strony przyszłych użytkownikow niekompletne i zmieniające się wymagania nierealne plany i oczekiwania Strona: 8

Raport grupy Standish (2) Strona: 9

Rozczarowanie klasycznym podejściem Przekraczanie terminow i budżetow Konieczność pracy w nadgodzinach Projekty trudne i kosztowne do utrzymania Stosy dokumentacji Presja czasu -> słaba jakość Nacisk na jakość -> wolny rozwój i długi czas pomiędzy rozpoczęciem projektu a efektywnymi wynikami Brak elastyczności na zmiany -> duże koszty zmian, duże ryzyko strat finansowych i upadku projektu Niespełnienie oczekiwań klienta Źródło: http://www.colinthomas.com Strona: 10

Źrodło: http://www.nerdmeyr.com/images/blog Strona: 11

Powstanie metodologii zwinnych

Narodziny metodologii zwinnych Snowbird, Utah, Luty 2001 17 ludzi z branży: Kent Beck, Mike Beedle, Arie van Bennekum, Alistair Cockburn, Ward Cunningham, Martin Fowler, James Grenning, Jim Highsmith, Andrew Hunt, Ron Jeffries, Jon Kern, Brian Marick, Robert C. Martin, Steve Mellor, Ken Schwaber, Jeff Sutherland, Dave Thomas http://agilemanifesto.org Agile Alliance, koniec 2001 http://www.agilealliance.org Źrodło: http://storymill.com/mu/jsk/item/tp50 Strona: 13

Manifest metodologii zwinnych Odnajdujemy lepsze sposoby wytwarzania oprogramowania poprzez jego tworzenie i pomaganie innym w tej działalności. W ramach tej pracy nauczyliśmy się bardziej cenić: Osoby i komunikację od procesow i narzędzi Działające oprogramowanie od kompleksowej dokumentacji Współpracę klienta od negocjacji kontraktow Reagowanie na zmianę od podążania za planem Rzeczy po prawej mają dla nas wartość, ale te po lewej cenimy znacznie bardziej. Strona: 14

Podstawowe zasady określone w manifeście Naszym najwyższym priorytetem jest spełnianie oczekiwań klienta poprzez wczesne i częste dostarczanie cennego software u. Bądź gotow na zmieniające się wymagania, nawet na poźnym etapie projektu. Zwinny proces wykorzystuje zmianę na korzyść klienta. Dostarczaj działający produkt często, od kilku tygodni to kilku miesięcy, przy czym krotkie ramy czasowe są preferowane. Klienci i programiści muszą codziennie pracować razem przez cały czas trwania projektu. Buduj projekt w oparciu o zmotywowane jednostki. Przygotuj im środowisko, wspieraj ich potrzeby i zaufaj im. Najbardziej efektywną i wydajną metodą pozyskiwania wiedzy przez i w ramach zespołu projektowego jest bezpośrednia rozmowa. Działający software jest głowną miarą postępu. Zwinny proces promuje stabilny rozwoj. Sponsorzy, deweloperzy i użytkownicy powinni zawsze utrzymywać stałe tempo rozwoju. Przywiązywanie ciągłej uwagi do wysokiej jakości i dobrego projektu wzmacnia zwinność. Prostota - sztuka maksymalizowania ilości niezrealizowanej pracy - jest zasadnicza. Najlepsze architektury, wymagania i projekty są efektem pracy samo-organizujących się zespołow. W regularnych odstępach czasu zespoł dokonuje refleksji na temat swojej efektywności, a następnie odpowiednio dostosowuje i usprawnia swoje zachowanie. Strona: 15

Metodologie zwinne a podejście adaptacyjne Metodologie zwinne nazywa są też metodologiami adaptacyjnymi (klasyczne są oparte na planie plan-driven) Można je rozumieć rownież jako empiryczne (klasyczne to teoretyczne) Częste przyrosty są niezbędne dla metod empirycznych Podejście adaptacyjne czyni metodologie zwinne idealnym narzędziem dla projektow o zmiennych wymaganiach Strona: 16

Najważniejsze metodologie zwinne extrem e Program m ing (1996) Scrum (1986) C rystalm ethodologies (1996) Adaptive Softw are D evelopm ent(1995) Feature D riven D evelopm ent(1995) D ynam ic System s D evelopm entm ethod (1990) Lean Softw are D evelopm ent(1996) Prince O pen Source...iinne Strona: 17

Konferencje poświęcone ruchowi Agile XP C onference, od 2000 roku, europejska, m.in. W łochy, N iem cy, ostatnia w Finlandii(O ulu) Agile InternationalC onference,u SA XP U niverse,teraz w ram ach Agile InternationalC onference InternationalC onference ofagile M anufacturing,irlandia International C onference on Agile Processes in Softw are Engineering and extrem e Program m ing,w łochy (Springer) 10th AG ILE International C onference on G eographic Inform ation Science Agile D evelopm entc onference...iinne Strona: 18

Bibliografia Robert C. Martin Agile Patterns, and Practices Software Development, Principles, Alistair Cockburn Agile Software Development, Ken Schwaber Agile Project Management with Scrum Steve McConnell Rapid Development Kent Beck extreme Programming explained Embrace Change James Newkirk, Rober C. Martin extreme Programming in Practice David Asteles, Granville Miller, Miroslav Nowak A Practical Guide to extreme Programming Strona: 19

Użyteczne adresy Martin Fowler, The Agile Manifesto: where it came from and where it may go http://www.martinfowler.com/articles/agilestory.html Martin Fowler, The New Methodology http://www.martinfowler.com/articles/newmethodology.html Agile Alliance, dział artykułow: http://www.agilealliance.org/library Scott Ambler, Fragile Manifesto http://www.ddj.com/dept/architect/184414888 Wikipedia: Agile software development http://en.wikipedia.org/wiki/agile software development Linda Rising, Agile Methods: What s it All About? http://ddci.com/newsarchive/news vol2num9.php#agile Strona: 20

Wprowadzenie do gry planistycznej

Tradycyjne podejście do procesu wytwarzania oprogramowania U dział klienta w projekcie to okreś lenie sw oich w ym agań i ocena w ynikow końcow ych (czasam iteż poś rednich w ersjidem onstracyjnych lub prezentacjipostępu projektu) Term in ukończenia projektu w yznaczany w fazie podpisyw ania um ow y (lub czasam inaw etw cześ niej) Artefakty projektu: skom plikow ane itrudno przysw ajalne dla klienta trudne do m odyfikacji Strona: 22

Kiedy to działa? Klient dobrze wie czego chce Analityk poprawnie zrozumie i przeprowadzi analizę tego czego chce klient Projektant poprawnie zrozumie analizę i przygotuje kompletny i spójny projekt Programista poprawnie zrozumie projekt i stworzy dobrze działający system Klient nie zmienił w tym czasie zdania Wyznaczony termin uwzględnia odpowiedni zapas jest wynikiem oceny doświadczonego zespołu Strona: 23

Zwinne podejście do planowania: gra planistyczna Planowanie w standardowym procesie: średni lub duży zakres czasowy, szczegółowe, statyczne Planowanie Planowanie zwinne na przykładzie Programowania Ekstemalnego: średni lub krótki zakres czasowy, zmienna szczegółowość, dynamiczne Strona: 24