LEKKIE METODOLOGIE WYTWARZANIA OPROGRAMOWANIA

Wielkość: px
Rozpocząć pokaz od strony:

Download "LEKKIE METODOLOGIE WYTWARZANIA OPROGRAMOWANIA"

Transkrypt

1 LEKKIE METODOLOGIE WYTWARZANIA OPROGRAMOWANIA Wykład 6 Programowanie Ekstremalne Jacek Dajda <dajda@agh.edu.pl> Kraków, 22 listopada 2007

2 Plan wykładu Wprowadzenie Założenia i podział praktyk Praktyki warstwy pracy w parach Strona: 2

3 Wprowadzenie

4 Skąd nazwa? Pierwsze skojarzenie: sporty ekstremalne - nowe, chwytne skojarzenie, dobry chwyt marketingowy XP to pewna rewolucja w myśleniu o procesie tworzenia oprogramowania (lata 90-te) - ekstremalna zmiana kierunku myślenia Oficjalna wykładnia: XP to przestrzeganie 12 podstawowych praktyk do ekstremalnych granic - wtedy pojawia się synergia Żródła: Strona: 4

5 Czym jest Programowanie Ekstremalne? extreme Programming (XP) to przede wszystkim nowy sposob myślenia Wynik zapotrzebowania na zmiany (jeden z elementów naturalnej ewolucji) Zbiór sprawdzonych doświadczeń Odpowiedź na wzrastające tempo i stopień złożoności współczesnych projektów A lightweight, efficient, low-risk, flexible, predictable, scientific and fun way to develop software Kent Beck, Extreme Programming Explained A humanistic discipline of software development Ron Jeffries Strona: 5

6 Charakterystyka XP Przyrostowy, nieformalny oprogramowania i lekki model tworzenia Metodyka... zorientowana na ludziach i ich wzajemnej wspołpracy przewidziana dla niewielkich zespołow (do 12 osób) oparta na synergii wynikajacej ze stosowania prostych praktyk i reguł najbardziej metodologii znana z rodziny lekkich (zwinnych) Strona: 6

7 Powstanie XP Projekt Comprehensive Compensation System (C3) w Daimler-Chrysler System rozliczeniowy dla pracowników, głowne cele to: 1. Przeniesienie dużego systemu mainframe na PC 2. Problem roku 2000 Realizacja oparta na Smalltalku Źródło: Strona: 7

8 Powstanie XP (2) Kent Beck, Ward Cunningham, Ron Jefferies ukończenie podstawowej (pilotażowej) wersji systemu, sformułowanie założeń metodyki wydanie Extreme Programming Explained projekt anulowany Źródła: wiki.mozcn.org, Strona: 8

9 Założenia i podział praktyk

10 Punkty widzenia 5 wartości Komunikacja Prostota Sprzężenie zwrotne 12 praktyk Gra planistyczna Programowanie w parach Programowanie sterowane testami Doskonalenie modelu (refaktoryzacja) Odwaga Prosty projekt Respekt Małe przyrosty Ciągła integracja Współwłasność kodu Standard kodowania Brak nadgodzin Klient w zespole Metafora Testy klienta 4 aktywności Kodowanie Testowanie Słuchanie Projektowanie Strona: 10

11 Wartości XP Komunikacja - krytyczna w pracy zespołu, pozwala na uniknięcie poważnych problemow, podstawa wielu praktyk XP Prostota KISS = Keep It Simple, Stupid albo Keep It Simple and Stupid BUZI = Bez Udziwnień Zapisuj, Idioto Sprzężenie zwrotne pochodzące od: Systemu Klienta Zespołu Odwaga - konieczność dokonywania radykalnych decyzji Respekt podstawa współpracy Strona: 11

12 Aktywności...czyli co robić by osiągnąć zamierzony cel Kodowanie - sposob komunikacji, przekazywania wiedzy, najważniejszy artefakt Testowanie - zwiększa żywotność kodu i zaufanie do jego jakości, uczy przewidywania, niebezpieczeństwo złych testow Słuchanie - uzyskiwanie wiedzy o wymaganiach i potrzebach systemu, wymiana informacji dot. problemow i aktualnego stanu prac Projektowanie - organizowanie prac nad systemem w logiczną całość, niebezpieczeństwo skomplikowanej i statycznej struktury Strona: 12

13 Obecny status Żródło: Strona: 13

14 Podstawowe praktyki XP Programowanie parami Współwłasność kodu Klient w zespole Programowanie sterowane testami Ciągła integracja Gra planistyczna Prosty projekt Standard kodowania Metafora Doskonalenie modelu Stałe tempo Małe przyrosty Testy klienta Strona: 14

15 Podział praktyk Klient w zespole Gra planistyczna Współwłasność kodu Warstwa organizacji projektu Programowanie parami Kod Testy Doskonalenie modelu Standard kodowania Małe przyrosty Prosty projekt Programowanie sterowane testami Stałe tempo Testy klienta Warstwa pracy w parach Ciągła integracja Warstwa pracy z klientem Metafora Strona: 15

16 Synergia i zależności pomiędzy praktykami Gra planistyczna Klient w zespole Małe przyrosty Metafora Testy klienta Prosty projekt Ciągła integracja Programowanie parami Standard kodowania Refaktoryzacja Współwłasność kodu Programowanie sterowane testami Brak nadgodzin Strona: 16

17 Koszty zmian Standardowe podejście Koszty zmian XP w praktyce XP w teorii Czas Wymagania Analiza i projekt Kodowanie Testowanie Produkcja Strona: 17

18 Cykl projektu XP Źródło: Strona: 18

19 Przebieg iteracji Źródło: Strona: 19

20 Praktyki warstwy pracy nad kodem

21 Klient w zespole Gra planistyczna Współwłasność kodu Warstwa organizacji projektu Programowanie parami Kod Testy Doskonalenie modelu Standard kodowania Małe przyrosty Warstwa pracy w parach Prosty projekt Programowanie sterowane testami Stałe tempo Testy klienta Ciągła integracja Warstwa pracy z klientem Metafora

22 Doskonalenie modelu (refaktoryzacja) i Programowanie Sterowane Testami (TDD) Testy jednostkowe przed kodem Testy muszą spełniać warunki: Doskonalenie modelu Programowanie sterowane testami być niezależne od innych testow, żeby nie powodować kaskad błędow, być zautomatyzowane, ponieważ będą wykonywane przy każdej integracji Wszystkie testy muszą przejść pomyślnie by moc iść naprzod Uruchamiane po każdej zmianie Stanowią o jakości Doskonalenie modelu... czyli refaktoring Ulepszanie struktury istniejącego kodu z zachowaniem zewnętrznego zachowania (pielęgnacja oprogramowania) Rozrastanie się kodu zmniejsza jego przejrzystość Strona: 22

23 Prosty projekt Bezpośrednio związane z programowaniem, tylko to co jest niezbędne Dobry projekt to prosty projekt, czyli taki, który: przechodzi pomyślnie wszystkie testy jednostkowe i funkcjonalne nie ma redundancji logicznych potrafi czytelnie przekazać odbiorcy zamysł (intencję) projektanta zawiera najmniejszą możliwą liczbę komponentow niezbędnych do realizacji danej funkcji Prosty nie znaczy banalny Czytelność, gotowość do zmiany niż jej przewidywanie Przyszłość jest niepewna Strona: 23

24 Złote myśli :-) KISS (BUZI) Keep It Simple Stupid (Keep It Simple and Stupid) Bez Udziwnień Zapisuj Idioto Dbanie o prosty, czytelny kod. Unikanie barokowych konstrukcji YAGNI You Aren t Gonna Need It Bez dodawania nowych, zbędnych funkcjonalności DTSTTCPW Do The Simplest Thing That Could Possibly Work Dochodzenie do celu powinno odbywać się nakrotszą, najłatwiejszą i najpewniejszą drogą OAOO Once And Only Once Wszystko co istotne powinno zostać zapisane. Ale tylko raz. DRY Don t Repeat Yourself - patrz OAOO Strona: 24

25 Pokusa nowych funkcjonalności Podczas pracy nad kodem często pojawia się pokusa dodania funkcjonalności, które nie są potrzebne w tej chwili, ale mogą się przydać w przyszłości. Należy wówczas pamiętać, że: każda nowa funkcjonalność zabiera czas, być może kosztem istotnych funkcjonalności każda nowa funkcjonalność musi być przetestowana, zintegrowana, sprawdzona przed użytkownika i zdokumentowana (chociażby w dokumentacji użytkownika) każda nowa funkcjonalność to możliwe ograniczenia, które mogą zablokować rozwój ważnych funkcjonalności w przyszłości każda nowa niepotrzebna funkcjonalność to ryzyko niepełnych (zgadywanych?) wymagań, co utrudnia testowanie. Nawet jeśli w przyszłości okaże się potrzebna, może wymagać poprawy każda nowa funkcjonalność to zaburzenie i niepotrzebny wzrost rozmiarów i stopnia skomplikowania kodu, który nie oferuje nic nowego z punktu widzenia klienta Strona: 25

26 Pokusa nowych funkcjonalności (2) każda nowa konieczność poinformowania programistów funkcjonalność to dodatkowego o niej innych każda nowa funkcjonalność to szersza perspektywa nowych funkcjonalności. Efekt kuli śniegowej Źródło: Strona: 26

27 Obawy Proste rozwiązania nie nadają się do wszystkiego Prostota ogranicza skalowalność Lepiej dobrze przygotować środowisko i potem zaoszczędzić czas na jego rozwijanie Jeżeli nowa funkcjonalność to niewiele pracy to czemu jej nie dodać - zawsze coś więcej do pokazania klientowi W niektorych aspektach programista ma większe doświadczenie czego może potrzebować klient - nowe funkcjonalności na pewno będą potrzebne Łatwiej dodać nową funkcjonalność ma się dobrą znajomość danego fragmentu systemu. Poźniejsze rozszerzanie wiąże się z koniecznością odświeżenia pamięci Strona: 27

28 Programowanie w parach Dwoch programistow przy jednym komputerze, role Pilota i Nawigatora Częsta i swobodna zmiana par w obrębie zespołu Jedna z najbardziej charakterystycznych i najbardziej kontrowersyjnych praktyk XP Czasami trudna, wymaga szczegolnego podejścia do pracy Nie każdy nadaje się do pracy w parach Źródła: Strona: 28

29 7 synergicznych zachowań programistów w parach Pytanie o skuteczność programowania w parach Wszędzie gdzie mamy do czynienia z czynnikiem ludzkim istotną rolę odgrywają psychologiczne aspekty (np. Sport) Laurie Williams, Robert Kessler: Pair Programming Illuminated Na podstawie ekspetymentow i własnych doświadczeń wyrożnili 7 synergicznych zachowań: Presja Negocjacje Odwaga Inspekcje Debugowanie Nauka Zaufanie Źródła: Strona: 29

30 Presja Osoby pracujące razem wspolnie odczuwają wszystko co im przeszkadza w pracy (kawa, mejle, gadu-gadu etc.) stąd presja, która pomaga w samodyscyplinie i sposobie organizacji pracy e-czynnik = nieprzerwany czas pracy / pełny czas pracy W efekcie starają się zminializować potrzebę przerw i maksymalnie wykorzystać dostępny im czas Źródła: Zasada Agile: znajdować sposób, a nie zmuszać Strona: 30

31 Negocjacje Żeby napisać kod w parze dwie osoby muszą ustalić wspolną drogę implementacji - to wymaga nieustających negocjacji Poprzez negocjacje są w stanie przejrzeć większy zakres rozwiązań niż pojedyczy programista i wybrać najlepszy - dzięki temu łatwiej uniknąć tzw. ślepych uliczek Co dwie głowy to nie jedna - pary są w stanie rozwiązywać trudniejsze zadania Pracują stabilniej Źródła: Strona: 31

32 Odwaga Często barierą w podjęciu inicjatywy jest obawa przed obnażeniem swojej słabości lub koniecznością konfrontacji z innymi Zawsze pojawia się moment kiedy posiadana wiedza nie wystarcza Pojedynczy programista obawia się obnażenia braku swojej wiedzy, jeśli dwoch programistow czegoś nie wie być może nie jest to takie proste Podobnie z wyrażaniem sprzeciwu, rozwiązywaniem błędów i problemow łatwiej wyrazić sprzeciw parze niż pojedynczemu programiście Świadomość wsparcia i współodpowiedzialności partnera daje komfort i poczucie bezpieczeństwa w kupie zawsze raźniej ;-) Źródła: Strona: 32

33 Inspekcje Inspekcje kodu pomagają w utrzymaniu jego jakości Podczas programowania w parach ten proces zachodzi cały czas Źródła: Strona: 33

34 Debugowanie Często wypowiedzenie problemu na głos prowadzi do jego rozwiązania Konieczność wyjaśnienia czegoś drugiej osobie pozwala w orządkowaniu własnego sposobu myślenia Podczas programowania w parach te sytuacje są naturalnym elementem Źródła: Strona: 34

35 Nauka Każdy ma unikalny zasob wiedzy i doświadczeń programowanie w parach jest okazją do naturalnej wymiany, nawet doświadczony programista może poznać inny punkt widzenia Dzięki częstym zmianom par wiedza i doświadczenie dyfunduje w obrębie całego zespołu i niweluje rożnice Źródła: Strona: 35

36 Zaufanie Odwaga, nauka, satysfakcja z pracy oraz jakość osiąganych wynikow zwiększają wiarę w możliwości zespołu i własne Pozytywne podejście do pracy daje lepsze wyniki Źródła: Strona: 36

37 A może 3 programistów? W parze jeden programistów? komunikacji, a w przypadku 3 Gdzie kucharek sześć... kanał Kwestia organizacji miejsca pracy Większa trudność w sposobie organizacji projektu i ustaleniu harmonogramu prac Opór materii Większe sesje programistyczne stosowane w razie specjalnych okoliczności: np. praca z ekspertem, klientem, debugowanie, burza mozgów etc. Strona: 37

38 Efektywność programistów w parach Jedno z głównych wątpliwości i kontrowersji Zakłada się, że programiści w parach pracują szybciej niż pojedynczy programista (reguła 20/20) Aby to zweryfikować przeprowadzono kilka eksperymentow Eksperyment Johna Noska - podział uczestnikow na pracujących w parach i indywidualnie. Proste zadanie. Uzyskany średni wynik: indywidualnie: 42 minuty w parach: 30 minut 1999, Laurie A. Williams, North Carolina State University, The Costs and Benefits of Pair Programming, eksperyment wśrod studentow, 3 zadania. Porownanie programistow w parach i indywidualnych pod kątem: kosztów implementacji jakości kodu Strona: 38

39 W illiam s podaje: IBM raportuje w ydanie 250 milionów $ na napraw ę 30 tys. błędów w jednym ze sw oich system ów

40

41 Problemy i dobre praktyki związane z Programowaniem w Parach Problemy związane w programowaniem w parach Zależność od partnera, konieczność częstej zmiany Proponowane rozwiązania Akceptacja własnej ułomności Zaufanie do własnych umiejętności Ustalanie harmonogramu Ciągła komunikacja Problem jednego eksperta Słuchanie Kolokacja Zespołowość Organizacja stanowiska pracy Różnice umiejętności i wiedzy Równowaga kompromisu i asertywności Przerwy w pracy Psychologiczne problemy bliskiej współpracy np. The Prima Donna Programmer, The Hero, The Human Compiler etc. Strona: 41

Metody wytwarzania oprogramowania. Metody wytwarzania oprogramowania 1/31

Metody wytwarzania oprogramowania. Metody wytwarzania oprogramowania 1/31 Metody wytwarzania oprogramowania Metody wytwarzania oprogramowania 1/31 Metody wytwarzania oprogramowania 2/31 Wprowadzenie Syndrom LOOP Late Późno Over budget Przekroczono budżet Overtime nadgodziny

Bardziej szczegółowo

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

Główne założenia XP. Prostota (Simplicity) Komunikacja (Communication) Sprzężenie zwrotne (Feedback) Odwaga (Agressiveness) Extreme programming Główne założenia XP Prostota (Simplicity) Komunikacja (Communication) Sprzężenie zwrotne (Feedback) Odwaga (Agressiveness) Praktyki Planowanie: Planowanie releasu Planowanie iteracji

Bardziej szczegółowo

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

Jarosław Kuchta Dokumentacja i Jakość Oprogramowania. Wymagania jakości w Agile Programming Jarosław Kuchta Wymagania jakości w Agile Programming Wady klasycznych metod zapewnienia jakości Duży narzut na dokumentowanie Późne uzyskiwanie konkretnych rezultatów Trudność w odpowiednio wczesnym definiowaniu

Bardziej szczegółowo

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

Wykład VII. Programowanie III - semestr III Kierunek Informatyka. dr inż. Janusz Słupik. Wydział Matematyki Stosowanej Politechniki Śląskiej Wykład VII - semestr III Kierunek Informatyka Wydział Matematyki Stosowanej Politechniki Śląskiej Gliwice, 2014 c Copyright 2014 Janusz Słupik Wytwarzanie oprogramowania Model tworzenia oprogramowania

Bardziej szczegółowo

Tworzenie gier na urządzenia mobilne

Tworzenie gier na urządzenia mobilne Katedra Inżynierii Wiedzy Wykład 3 O czym dzisiaj? Metodyki tworzenia oprogramowania; Praca w zespole; Zarządzanie projektem; Narzędzia wspomagające i dobre praktyki; Zabezpieczenie kodu. Jaki model wybrać?

Bardziej szczegółowo

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

szkolenia pod drzewem Wybrane Techniki XP bnd 2008 Tomasz Włodarek. Materiał udostępniany na podstawie licencji Creative Commons (by-nc-nd) 1.00. szkolenia pod drzewem Wybrane Techniki XP 1.00.00 bnd Wybrane techniki XP współwłasność kodu źródłowego (collective code ownership) częsta/ciągła integracja (continuous integration) programowanie w parach

Bardziej szczegółowo

Agile Project Management

Agile Project Management Charles G. Cobb, pmp Zrozumieć Agile Project Management Równowaga kontroli i elastyczności przekład: Witold Sikorski APN Promise Warszawa 2012 Spis treści Wstęp...vii Kto powinien przeczytać tę książkę?...

Bardziej szczegółowo

Zagadnienia. Inżynieria Oprogramowania

Zagadnienia. Inżynieria Oprogramowania Zagadnienia Co to jest extreme Programming (XP) Czym charakteryzują się tzw. lekkie metodyki zarządzania procesem produkcji oprogramowania Reguły i praktyki XP Dlaczego i kiedy można a w jakich przypadkach

Bardziej szczegółowo

Zagadnienia. Inżynieria Oprogramowania

Zagadnienia. Inżynieria Oprogramowania Zagadnienia Co to jest extreme Programming (XP) Czym charakteryzują się tzw. lekkie metodyki zarządzania procesem produkcji oprogramowania Reguły i praktyki XP Dlaczego i kiedy można a w jakich przypadkach

Bardziej szczegółowo

Testowanie oprogramowania

Testowanie oprogramowania Testowanie oprogramowania 1/17 Testowanie oprogramowania Wykład 01 dr inż. Grzegorz Michalski 13 października 2015 Testowanie oprogramowania 2/17 Dane kontaktowe: Kontakt dr inż. Grzegorz Michalski pokój

Bardziej szczegółowo

Programowanie Zespołowe

Programowanie Zespołowe Programowanie Zespołowe Dobre Praktyki dr Rafał Skinderowicz mgr inż. Michał Maliszewski Parafrazując klasyka: Jeśli piszesz w Javie pisz w Javie - Rafał Ciepiela Principal Software Developer Cadence Design

Bardziej szczegółowo

SYSTEMY INFORMATYCZNE ćwiczenia praktyczne

SYSTEMY INFORMATYCZNE ćwiczenia praktyczne SYSTEMY INFORMATYCZNE ćwiczenia praktyczne 12.03.2019 Piotr Łukasik p. 373 email: plukasik@agh.edu.pl / lukasik.pio@gmail.com www.lukasikpiotr.com Zakres tematyczny implementacji projektu informatycznego

Bardziej szczegółowo

Feature Driven Development

Feature Driven Development Feature Driven Development lekka metodyka tworzenia oprogramowania Kasprzyk Andrzej IS II Wstęp Feature Driven Development (FDD) to metodyka tworzenia oprogramowania, która wspomaga zarządzanie fazami

Bardziej szczegółowo

Programowanie zespołowe

Programowanie zespołowe Programowanie zespołowe Laboratorium 4 - modele tworzenia oprogramowania, manifest Agile i wstęp do Scruma mgr inż. Krzysztof Szwarc krzysztof@szwarc.net.pl Sosnowiec, 14 marca 2017 1 / 21 mgr inż. Krzysztof

Bardziej szczegółowo

LEKKIE METODOLOGIE WYTWARZANIA OPROGRAMOWANIA

LEKKIE METODOLOGIE WYTWARZANIA OPROGRAMOWANIA LEKKIE METODOLOGIE WYTWARZANIA OPROGRAMOWANIA Wykład 7 Programowanie Ekstremalne (2) Jacek Dajda Kraków, 29 listopada 2007 Plan wykładu Praktyki warstwy organizacji projektu Praktyki

Bardziej szczegółowo

Metodyki zwinne wytwarzania oprogramowania

Metodyki zwinne wytwarzania oprogramowania Metodyki zwinne wytwarzania oprogramowania Wykład 1 Marcin Młotkowski 7 października 2014 Plan wykładu Sprawy organizacyjne Organizacja pracowni 1 Sprawy organizacyjne Organizacja pracowni 2 3 Marcin Młotkowski

Bardziej szczegółowo

Programowanie extremalne. Adrian Gadzina

Programowanie extremalne. Adrian Gadzina Programowanie extremalne Adrian Gadzina XP czym jest? Programowanie ekstremalne (ang. extreme Programming, XP) to paradygmat i metodyka programowania mająca na celu wydajne tworzenie małych i średnich

Bardziej szczegółowo

Programowanie zwinne

Programowanie zwinne Programowanie zwinne Wykład 1 Marcin Młotkowski 10 października 2012 Plan wykładu Sprawy organizacyjne Organizacja pracowni 1 Sprawy organizacyjne Organizacja pracowni 2 3 Marcin Młotkowski Programowanie

Bardziej szczegółowo

Lekkie metodyki. tworzenia oprogramowania

Lekkie metodyki. tworzenia oprogramowania Lekkie metodyki tworzenia oprogramowania Programowanie zwinne ( Agile software development) grupa metodyk wytwarzania oprogramowania opartego o programowanie iteracyjne (model przyrostowy). Wymagania oraz

Bardziej szczegółowo

BUZI (Bez Udziwnień Zbędnych Idioto) WYKŁAD. Memento 1

BUZI (Bez Udziwnień Zbędnych Idioto) WYKŁAD. Memento 1 METODY I JĘZYKI PROGRAMOWANIA PROGRAMOWANIE STRUKTURALNE Wykład pierwszego kontaktu Zrozumieć współczesną technologię informacji versus ZZZ czyli JAK WARTO SIĘ UCZYĆ? Memento 1 WYKŁAD to taka forma PRZEKAZU

Bardziej szczegółowo

NAJLEPSZE STRATEGIE SKUTECZNYCH PROGRAMISTÓW. TECHNIKI PRACY Z KODEM KOD: NSKOD

NAJLEPSZE STRATEGIE SKUTECZNYCH PROGRAMISTÓW. TECHNIKI PRACY Z KODEM KOD: NSKOD NAJLEPSZE STRATEGIE SKUTECZNYCH PROGRAMISTÓW. TECHNIKI PRACY Z KODEM KOD: NSKOD OPIS Praca programisty oprócz umiejętności i wiedzy technicznej, wymaga również doskonałej pracy z kodem. Umiejętności te

Bardziej szczegółowo

MODELE CYKLU ŻYCIA OPROGRAMOWANIA (1) Model kaskadowy (często stosowany w praktyce do projektów o niewielkiej złożonoś

MODELE CYKLU ŻYCIA OPROGRAMOWANIA (1) Model kaskadowy (często stosowany w praktyce do projektów o niewielkiej złożonoś OPROGRAMOWANIA (1) Model kaskadowy (często stosowany w praktyce do projektów o niewielkiej złożonoś (często stosowany w praktyce do projektów o niewielkiej złożoności) wymagania specyfikowanie kodowanie

Bardziej szczegółowo

Etapy życia oprogramowania

Etapy życia oprogramowania Modele cyklu życia projektu informatycznego Organizacja i Zarządzanie Projektem Informatycznym Jarosław Francik marzec 23 w prezentacji wykorzystano również materiały przygotowane przez Michała Kolano

Bardziej szczegółowo

AUREA BPM HP Software. TECNA Sp. z o.o. Strona 1 z 7

AUREA BPM HP Software. TECNA Sp. z o.o. Strona 1 z 7 AUREA BPM HP Software TECNA Sp. z o.o. Strona 1 z 7 HP APPLICATION LIFECYCLE MANAGEMENT Oprogramowanie Application Lifecycle Management (ALM, Zarządzanie Cyklem życia aplikacji) wspomaga utrzymanie kontroli

Bardziej szczegółowo

Zarządzanie projektami. Porównanie podstawowych metodyk

Zarządzanie projektami. Porównanie podstawowych metodyk Zarządzanie projektami Porównanie podstawowych metodyk Porównanie podstawowych metodyk w zarządzaniu projektami PRINCE 2 PMBOK TENSTEP AGILE METODYKA PRINCE 2 Istota metodyki PRINCE 2 Project IN Controlled

Bardziej szczegółowo

Etapy życia oprogramowania. Modele cyklu życia projektu. Etapy życia oprogramowania. Etapy życia oprogramowania

Etapy życia oprogramowania. Modele cyklu życia projektu. Etapy życia oprogramowania. Etapy życia oprogramowania Etapy życia oprogramowania Modele cyklu życia projektu informatycznego Organizacja i Zarządzanie Projektem Informatycznym Jarosław Francik marzec 23 Określenie wymagań Testowanie Pielęgnacja Faza strategiczna

Bardziej szczegółowo

Błędy procesu tworzenia oprogramowania (Badania firmy Rational Software Corporation)

Błędy procesu tworzenia oprogramowania (Badania firmy Rational Software Corporation) Błędy procesu tworzenia oprogramowania (Badania firmy Rational Software Corporation) Zarządzanie wymaganiami Ad hoc (najczęściej brak zarządzania nimi) Niejednoznaczna, nieprecyzyjna komunikacja Architektura

Bardziej szczegółowo

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

Programowanie zwinne - wprowadzenie. Programowanie ekstremalne. Wstęp Reguły i praktyki SCRUM. Wprowadzenie Role Zdarzenia Artefakty Anna Kulig Programowanie zwinne - wprowadzenie Programowanie ekstremalne Wstęp Reguły i praktyki SCRUM Wprowadzenie Role Zdarzenia Artefakty Agile Manifesto 2001 rok, Snowbird w stanie Utah w USA Najważniejsi

Bardziej szczegółowo

Kod doskonały : jak tworzyć oprogramowanie pozbawione błędów / Steve McConnell. Gliwice, cop Spis treści. Wstęp 15.

Kod doskonały : jak tworzyć oprogramowanie pozbawione błędów / Steve McConnell. Gliwice, cop Spis treści. Wstęp 15. Kod doskonały : jak tworzyć oprogramowanie pozbawione błędów / Steve McConnell. Gliwice, cop. 2017 Spis treści Wstęp 15 Podziękowania 23 Listy kontrolne 25 Tabele 27 Rysunki 29 Część I Proces budowy oprogramowania

Bardziej szczegółowo

Projektowanie systemów informatycznych. wykład 6

Projektowanie systemów informatycznych. wykład 6 Projektowanie systemów informatycznych wykład 6 Iteracyjno-przyrostowy proces projektowania systemów Metodyka (ang. methodology) tworzenia systemów informatycznych (TSI) stanowi spójny, logicznie uporządkowany

Bardziej szczegółowo

Michał Olejnik. 22 grudnia 2009

Michał Olejnik. 22 grudnia 2009 Continuous TDD Politechnika Wrocławska Informatyka 22 grudnia 2009 Agenda Wprowadzenie 1 Wprowadzenie 2 3 4 5 Agenda Wprowadzenie 1 Wprowadzenie 2 3 4 5 Agenda Wprowadzenie 1 Wprowadzenie 2 3 4 5 Agenda

Bardziej szczegółowo

Testowanie Akceptacyjne

Testowanie Akceptacyjne szkolenia pod drzewem Testowanie Akceptacyjne 1.00.00 bnd Czym są testy akceptacyjne? Formą sprawdzenia (walidacji) czy wymagania (historie uŝytkownika) zostały zaimplementowane przez zespół tak jak spodziewał

Bardziej szczegółowo

Metodyki programowania. Tomasz Kaszuba 2015 kaszubat@pjwstk.edu.pl

Metodyki programowania. Tomasz Kaszuba 2015 kaszubat@pjwstk.edu.pl Metodyki programowania Tomasz Kaszuba 2015 kaszubat@pjwstk.edu.pl Wybrane metodyki zwinne TRADYCYJNE: RUP (Rational Unified Process) spiralny, rozbudowany PRINCE2 (Projects In Controlled Environments)

Bardziej szczegółowo

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

Klasyczna organizacja też może być zwinna! Zarządzaj zwinnie projektami! Klasyczna organizacja też może być zwinna! Dynamika zmian w dzisiejszym świecie IT wymaga niezwykłej elastyczności i błyskawicznego adaptowania się do nowych warunków. Klasyczne techniki zarządzania projektami

Bardziej szczegółowo

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

Wytwórstwo oprogramowania. michał możdżonek Wytwórstwo oprogramowania michał możdżonek 01.2008 Plan wykładu 1. Proces tworzenie oprogramowania 2. Zarządzanie projektami 3. Wymagania 4. Projektowanie 5. Testowanie 6. Szacowanie złożoności i kosztu

Bardziej szczegółowo

Acceptance Test Driven Development wspierane przez narzędzie ROBOT Framework. Edyta Tomalik Grzegorz Ziemiecki

Acceptance Test Driven Development wspierane przez narzędzie ROBOT Framework. Edyta Tomalik Grzegorz Ziemiecki Acceptance Test Driven Development wspierane przez narzędzie ROBOT Framework Edyta Tomalik Grzegorz Ziemiecki 1 Nokia Siemens Networks 2013 Tradycyjne podejście analityk programista tester implementacja

Bardziej szczegółowo

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

Akademia ADB Wykład I Praca w grupie i jakość kodu Akademia ADB Wykład I Praca w grupie i jakość kodu Ale zanim zaczniemy... https://www.adbglobal.com/adb-tech-talk/ Wtorek, 24 X 2017, 18:00 w Filharmonii Zielonogórskiej Kto pracuje nad projektem? Nad

Bardziej szczegółowo

XPrince dla architektów 1

XPrince dla architektów 1 Wprowadzenie do Laboratorium Inżynierii Oprogramowania Instytut Informatyki Politechnika Poznańska Jerzy Nawrocki Jerzy.Nawrocki@put.poznan.pl www.xprince.net Specjalność Software Engineering Konsorcjum

Bardziej szczegółowo

Wytwarzanie oprogramowania

Wytwarzanie oprogramowania AiPA 6 Wytwarzanie oprogramowania Proces tworzenia oprogramowania jest procesem przekształcenia wymagań w oprogramowanie zgodnie z metodyką, która określa KTO CO robi JAK i KIEDY. - Wymagania Proces tworzenia

Bardziej szczegółowo

4. Wprowadzanie Scruma w ImmobilienScout24 4.1. Opis sytuacji

4. Wprowadzanie Scruma w ImmobilienScout24 4.1. Opis sytuacji Spis treści Przedmowa 1. Wstęp 1.1. Jak czytać tę książkę 1.2. Studia projektów 1.3. Dodatek 2. Zwinny projekt to nie bułka z masłem 2.1. Pobudka 2.2. Zespół się formuje 2.3. Właściwe zlecenie 2.4. Od

Bardziej szczegółowo

Egzamin / zaliczenie na ocenę*

Egzamin / zaliczenie na ocenę* WYDZIAŁ PODSTAWOWYCH PROBLEMÓW TECHNIKI Zał. nr 4 do ZW33/01 KARTA PRZEDMIOTU Nazwa w języku polskim : INŻYNIERIA OPROGRAMOWANIA Nazwa w języku angielskim: SOFTWARE ENGINEERING Kierunek studiów (jeśli

Bardziej szczegółowo

DLA SEKTORA INFORMATYCZNEGO W POLSCE

DLA SEKTORA INFORMATYCZNEGO W POLSCE DLA SEKTORA INFORMATYCZNEGO W POLSCE SRK IT obejmuje kompetencje najważniejsze i specyficzne dla samego IT są: programowanie i zarządzanie systemami informatycznymi. Z rozwiązań IT korzysta się w każdej

Bardziej szczegółowo

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

Podejście tradycyjne. plan wykonanie sekwencyjna natura wykonywanych zadań Metodyka Scrum Podejście tradycyjne plan wykonanie sekwencyjna natura wykonywanych zadań analiza i definiowanie wymagań projektowanie rozwiązań kodowanie rozwiązań testowanie odstępstwo od planu jest kosztowne

Bardziej szczegółowo

Programowanie ekstremalne

Programowanie ekstremalne Programowanie ekstremalne Bartłomiej Zieliński Spis treści 1 Wstęp 2 2 Programowanie ekstremalne w praktyce 3 2.1 Ogólne zasady........................... 3 3 Zalety i wady programowania ekstremalnego

Bardziej szczegółowo

Programowanie Ekstemalne

Programowanie Ekstemalne Programowanie Ekstemalne Koncepcja wykładu: Jerzy Nawrocki/Łukasz Olek Slajdy/Lektor/Montaż: Łukasz Olek Witam Państwa serdeczenie na kolejnym wykładzie dotyczącym inżynierii oprogramowania! 1 Plan wykładów

Bardziej szczegółowo

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

Wykład 2. MIS-1-505-n Inżynieria oprogramowania Marzec 2014. Kazimierz Michalik Akademia Górniczo-Hutnicza im. S. Staszica w Krakowie Wykład 2 MIS-1-505-n Inżynieria Marzec 2014 Kazimierz Michalik Akademia Górniczo-Hutnicza im. S. Staszica w Krakowie 2.1 Agenda 1 2 3 4 5 6 2.2 Czynności w czasie produkcji. Inżynieria stara się zidentyfikować

Bardziej szczegółowo

Co to jest jest oprogramowanie? 8. Co to jest inżynieria oprogramowania? 9. Jaka jest różnica pomiędzy inżynierią oprogramowania a informatyką?

Co to jest jest oprogramowanie? 8. Co to jest inżynieria oprogramowania? 9. Jaka jest różnica pomiędzy inżynierią oprogramowania a informatyką? ROZDZIAŁ1 Podstawy inżynierii oprogramowania: - Cele 2 - Zawartość 3 - Inżynieria oprogramowania 4 - Koszty oprogramowania 5 - FAQ o inżynierii oprogramowania: Co to jest jest oprogramowanie? 8 Co to jest

Bardziej szczegółowo

Projektowanie oprogramowania. Wykład Weryfikacja i Zatwierdzanie Inżynieria Oprogramowania Kazimierz Michalik

Projektowanie oprogramowania. Wykład Weryfikacja i Zatwierdzanie Inżynieria Oprogramowania Kazimierz Michalik Projektowanie oprogramowania Wykład Weryfikacja i Zatwierdzanie Inżynieria Oprogramowania Kazimierz Michalik Agenda Weryfikacja i zatwierdzanie Testowanie oprogramowania Zarządzanie Zarządzanie personelem

Bardziej szczegółowo

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

Leszno 14.03.2013. Jakie są i będą oczekiwania biznesu wobec IT? Leszno 14.03.2013 Jakie są i będą oczekiwania biznesu wobec IT? Banki stoją w obliczu zmian Uwarunkowania ekonomiczne Regulacje prawne Trendy społeczne Nowe technologie Dzisiaj otoczenie oczekuje innego

Bardziej szczegółowo

Ewolucja Architektury

Ewolucja Architektury Spójność koncepcyjna oznacza, że centralne dla systemu elementy współpracują jako jednolita, spójna całość. Komponenty pasują do siebie i sprawnie współpracują; architektura osiąga równowagę między elastycznością,

Bardziej szczegółowo

Ogólne zasady projektowania algorytmów i programowania

Ogólne zasady projektowania algorytmów i programowania Ogólne zasady projektowania algorytmów i programowania Pracuj nad właściwie sformułowanym problemem dokładna analiza nawet małego zadania może prowadzić do ogromnych korzyści praktycznych: skrócenia długości

Bardziej szczegółowo

Dlaczego testowanie jest ważne?

Dlaczego testowanie jest ważne? Testowanie Dlaczego testowanie jest ważne? Oprogramowanie które nie działa poprawnie może doprowadzić do: straty czasu, pieniędzy utraty reputacji uszkodzeń ciała a nawet śmierci Definicja błędu Oprogramowanie

Bardziej szczegółowo

Programowanie Zespołowe

Programowanie Zespołowe Programowanie Zespołowe Scrum+ dr Rafał Skinderowicz mgr inż. Michał Maliszewski Przeznaczenie metodyk Agile Metodyki zwinne Pomagają w projektach osadzonych w dynamicznym środowisku Kiedy konkurencja

Bardziej szczegółowo

Programowanie Zespołowe

Programowanie Zespołowe Programowanie Zespołowe Programowanie zwinne dr Rafał Skinderowicz mgr inż. Michał Maliszewski Programowanie zwinne Grupa metodyk wytwarzania oprogramowania oparta na modelu iteracyjno-obiektowym Powstała

Bardziej szczegółowo

Techniki komputerowe w robotyce

Techniki komputerowe w robotyce Techniki komputerowe w robotyce Wykład V Adaptacyjne zarządzanie projektami Robert Muszyński KCiR, W4, PWr Skład FoilTEX c R. Muszyński 2009-2015 Metodologie prowadzenia projektu Dążenie do opracowania

Bardziej szczegółowo

Wykład 1 Inżynieria Oprogramowania

Wykład 1 Inżynieria Oprogramowania Wykład 1 Inżynieria Oprogramowania Wstęp do inżynierii oprogramowania. Cykle rozwoju oprogramowaniaiteracyjno-rozwojowy cykl oprogramowania Autor: Zofia Kruczkiewicz System Informacyjny =Techniczny SI

Bardziej szczegółowo

Zwinna współpraca programistów i testerów z wykorzystaniem BDD i. by Example (JBehave/Spock/SpecFlow)

Zwinna współpraca programistów i testerów z wykorzystaniem BDD i. by Example (JBehave/Spock/SpecFlow) Program szkolenia: Zwinna współpraca programistów i testerów z wykorzystaniem BDD i Spec Informacje: Nazwa: Kod: Kategoria: Grupa docelowa: Czas trwania: Forma: Zwinna współpraca programistów i testerów

Bardziej szczegółowo

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

Organizacja procesu projektowania, rozwoju i serwisowania systemu wspomagającego zarzadzanie uczelnią Organizacja procesu projektowania, rozwoju i serwisowania systemu wspomagającego zarzadzanie uczelnią Marek Bieniasz Sławomir Umpirowicz Piotr Miszewski Kraków, 10 13 września 2012 Plan prezentacji Informacje

Bardziej szczegółowo

Modele cyklu życia oprogramowania

Modele cyklu życia oprogramowania Anna Kulig Modele cyklu życia oprogramowania Programowanie zwinne Przyczyny powstania Wprowadzenie Programowanie ekstremalne Wstęp Reguły i praktyki AUP krótki opis metodologii Model cyklu życia systemu

Bardziej szczegółowo

Zakres wykładu. Podstawy InŜynierii Oprogramowania

Zakres wykładu. Podstawy InŜynierii Oprogramowania Zakres wykładu Pojęcia podstawowe InŜynierii Oprogramowania Proces wytwarzania oprogramowania Artefakty procesu wytwarzania i ich modele Jakość oprogramowania Literatura: [1] Sacha K., InŜynieria oprogramowania,

Bardziej szczegółowo

ISO 9000/9001. Jarosław Kuchta Jakość Oprogramowania

ISO 9000/9001. Jarosław Kuchta Jakość Oprogramowania ISO 9000/9001 Jarosław Kuchta Jakość Oprogramowania Co to jest ISO International Organization for Standardization największa międzynarodowa organizacja opracowująca standardy 13700 standardów zrzesza narodowe

Bardziej szczegółowo

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

Zarządzanie projektami. Wykład 2 Zarządzanie projektem Zarządzanie projektami Wykład 2 Zarządzanie projektem Plan wykładu Definicja zarzadzania projektami Typy podejść do zarządzania projektami Cykl życia projektu/cykl zarządzania projektem Grupy procesów

Bardziej szczegółowo

Agile vs PRINCE2. 2014/2015 I rok st. magisterskie Informatyka

Agile vs PRINCE2. 2014/2015 I rok st. magisterskie Informatyka Agile vs PRINCE2 Ewa Solecka - specjalność ogólna- 1117627 Przemysław Mrozowski specjalność ogólna- 1121130 Michał Roztoczyński specjalność ogólna - 1118910 2014/2015 I rok st. magisterskie Informatyka

Bardziej szczegółowo

Wprowadzenie do systemów informacyjnych

Wprowadzenie do systemów informacyjnych Wprowadzenie do systemów informacyjnych Kryteria oceny systemu Podstawowe metody projektowania UEK w Krakowie Ryszard Tadeusiewicz 1 UEK w Krakowie Ryszard Tadeusiewicz 2 Technologia informatyczna dzisiaj

Bardziej szczegółowo

LEKKIE METODOLOGIE WYTWARZANIA OPROGRAMOWANIA

LEKKIE METODOLOGIE WYTWARZANIA OPROGRAMOWANIA LEKKIE METODOLOGIE WYTWARZANIA OPROGRAMOWANIA Wykład 2 Wprowadzenie do metodologii lekkich i gry planistycznej Jacek Dajda Kraków, 18 października 2007 Plan wykładu Przyczyny powstanie

Bardziej szczegółowo

Politechnika Krakowska im. Tadeusza Kościuszki. Karta przedmiotu. obowiązuje studentów rozpoczynających studia w roku akademickim 2015/2016

Politechnika Krakowska im. Tadeusza Kościuszki. Karta przedmiotu. obowiązuje studentów rozpoczynających studia w roku akademickim 2015/2016 Politechnika Krakowska im. Tadeusza Kościuszki Karta przedmiotu Wydział Mechaniczny obowiązuje studentów rozpoczynających studia w roku akademickim 201/2016 Kierunek studiów: Informatyka Stosowana Forma

Bardziej szczegółowo

Program szkolenia: JavaScript Craftsmanship

Program szkolenia: JavaScript Craftsmanship Program szkolenia: JavaScript Craftsmanship Informacje: Nazwa: Kod: Kategoria: Grupa docelowa: Czas trwania: Forma: JavaScript Craftsmanship Craft-practices-js-craft Craftsmanship developerzy architekci

Bardziej szczegółowo

REFERAT PRACY DYPLOMOWEJ

REFERAT PRACY DYPLOMOWEJ REFERAT PRACY DYPLOMOWEJ Temat pracy: Projekt i implementacja środowiska do automatyzacji przeprowadzania testów aplikacji internetowych w oparciu o metodykę Behavior Driven Development. Autor: Stepowany

Bardziej szczegółowo

PROJEKTOWANIE ZORIENTOWANE NA UŻYTKOWNIKA W METODYCE SCRUM. Hubert Wawrzyniak Grupa Allegro

PROJEKTOWANIE ZORIENTOWANE NA UŻYTKOWNIKA W METODYCE SCRUM. Hubert Wawrzyniak Grupa Allegro PROJEKTOWANIE ZORIENTOWANE NA UŻYTKOWNIKA W METODYCE SCRUM Hubert Wawrzyniak Grupa Allegro PLAN PREZENTACJI 1. Projektowanie zorientowane na użytkownika 2. Model kaskadowy 3. Metodyka scrum 4. UCD w scrumie

Bardziej szczegółowo

Technika mikroprocesorowa. Struktura programu użytkownika w systemie mikroprocesorowym

Technika mikroprocesorowa. Struktura programu użytkownika w systemie mikroprocesorowym Struktura programu użytkownika w systemie mikroprocesorowym start inicjalizacja niekończaca się pętla zadania niekrytyczne czasowo przerwania zadania krytyczne czasowo 1 Znaczenie problematyki programowania

Bardziej szczegółowo

SCRUM niełatwe wdrażanie metodyki w praktyce. Adam Krosny

SCRUM niełatwe wdrażanie metodyki w praktyce. Adam Krosny SCRUM niełatwe wdrażanie metodyki w praktyce Adam Krosny 1 Czym się zajmujemy Realizujemy projekty informatyczne średniej wielkości Ilość osób w projekcie 10-50 Architektura SOA, EBA Wiele komponentów

Bardziej szczegółowo

Czym jest jpalio? jpalio jpalio jpalio jpalio jpalio jpalio jpalio jpalio

Czym jest jpalio? jpalio jpalio jpalio jpalio jpalio jpalio jpalio jpalio Czym jest jpalio? jpalio to unikalna platforma technologiczna pozwalająca na stworzenie szeregu produktów dostosowanych do indywidualnych preferencji klienta. W naszej ofercie znajduje się m.in. system

Bardziej szczegółowo

Wskazówki projektowe. Programowanie Obiektowe Mateusz Cicheński

Wskazówki projektowe. Programowanie Obiektowe Mateusz Cicheński Wskazówki projektowe Programowanie Obiektowe Mateusz Cicheński Przydatne zasady SOLID Wzorce struktury aplikacji MVC MVP MVVM Metody wytwarzania oprogramowania Manifest Zwinnego Wytwarzania Oprogramowania

Bardziej szczegółowo

Scaling Scrum with SAFe. Małgorzata Czerwińska

Scaling Scrum with SAFe. Małgorzata Czerwińska Scaling Scrum with SAFe Małgorzata Czerwińska Agenda 1. Wstęp 2. Współpraca zespołów scrumowych 3. Zarządzanie Programem 4. Podsumowanie Wstęp Skuteczność zespołów developerskich, realizujących projekty

Bardziej szczegółowo

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

Szybkość w biznesie. Zwinne testowanie oprogramowania (Agile) Mateusz Morawski (mateusz.morawski@hp.com) 14 kwietnia 2015 Szybkość w biznesie Zwinne testowanie oprogramowania (Agile) Mateusz Morawski (mateusz.morawski@hp.com) 14 kwietnia 2015 Klient Wykonawca...wprowadzamy nowy typ przelewów do aplikacji internetowej. Dodam

Bardziej szczegółowo

SUCCESS INSIGHTS Indeks Umiejętności Sprzedaży

SUCCESS INSIGHTS Indeks Umiejętności Sprzedaży SUCCESS INSIGHTS Indeks Umiejętności Sprzedaży Przedstawiciel handlowy ABC Company 2012-11-15 Success Insights - Globalny lider komputerowych analiz zachowań i postaw. info@successinsights-cee.eu WSTĘP

Bardziej szczegółowo

Spis treści. 00 Red. Spis tresci. Wstep..indd 5 2009 12 02 10:52:08

Spis treści. 00 Red. Spis tresci. Wstep..indd 5 2009 12 02 10:52:08 Spis treści Wstęp 9 Rozdział 1. Wprowadzenie do zarządzania projektami 11 1.1. Istota projektu 11 1.2. Zarządzanie projektami 19 1.3. Cykl życia projektu 22 1.3.1. Cykl projektowo realizacyjny 22 1.3.2.

Bardziej szczegółowo

HP Service Anywhere Uproszczenie zarządzania usługami IT

HP Service Anywhere Uproszczenie zarządzania usługami IT HP Service Anywhere Uproszczenie zarządzania usługami IT Robert Nowak Architekt rozwiązań HP Software Dlaczego Software as a Service? Najważniejsze powody za SaaS UZUPEŁNIENIE IT 2 Brak zasobów IT Ograniczone

Bardziej szczegółowo

INŻYNIERIA OPROGRAMOWANIA LAB 1

INŻYNIERIA OPROGRAMOWANIA LAB 1 INŻYNIERIA OPROGRAMOWANIA LAB 1 MODELE TWORZENIA OPROGRAMOWANIA dr inż. Joanna Świebocka-Więk O mnie Kogo szukać? dr inż. Joanna Świebocka-Więk Gdzie szukać: Pokój 216, budynek D10 Zespół Technik Informacyjnych

Bardziej szczegółowo

Katarzyna Kaczmarska GO.pl

Katarzyna Kaczmarska GO.pl Katarzyna Kaczmarska GO.pl Dbanie o jakość ma sens, jest możliwe i potrzebne w każdej organizacji. Nie potrzeba do tego certyfikatów i dużych inwestycji. Aby uzyskać efekty warto zastosować sprawdzone

Bardziej szczegółowo

Podejście zwinne do zarządzania projektami

Podejście zwinne do zarządzania projektami Podejście zwinne do zarządzania projektami na przykładach projektów wytwarzania oprogramowania Wojciech Czujowski, Łukasz Sienkiewicz Tieto Poland Agenda CZĘŚĆ I-sza: Kilka słów o Tieto SCRUM w organizacji

Bardziej szczegółowo

Tworzenie oprogramowania

Tworzenie oprogramowania Tworzenie oprogramowania dr inż. Krzysztof Konopko e-mail: k.konopko@pb.edu.pl 1 Tworzenie oprogramowania dla systemów wbudowanych Program wykładu: Tworzenie aplikacji na systemie wbudowanym. Konfiguracja

Bardziej szczegółowo

ZASADY TWORZENIA OPROGRAMOWANIA

ZASADY TWORZENIA OPROGRAMOWANIA ZASADY TWORZENIA OPROGRAMOWANIA 1. Tylko złożone oprogramowanie wymaga inżynierii (cykl życia składający się z modelowania i testowania oraz sprzężenia zwrotnego prosty problem, zajęcia z programowania)

Bardziej szczegółowo

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

Jak być agile w projekcie utrzymaniowym? JOANNA SIEMIŃSKA Jak być agile w projekcie utrzymaniowym? JOANNA SIEMIŃSKA Joanna Siemińska o mnie Absolwentka Politechniki Warszawskiej Orange Outbox Europejska Organizacja Badań Jądrowych w Genewie (CERN) TouK Certyfikat

Bardziej szczegółowo

Zwinne wytwarzanie oprogramowania. Ian Sommerville: Software Engineering 9th edition, chapter 3. 1

Zwinne wytwarzanie oprogramowania. Ian Sommerville: Software Engineering 9th edition, chapter 3. 1 Zwinne wytwarzanie oprogramowania Ian Sommerville: Software Engineering 9th edition, chapter 3. 1 Metody zwinne Wytwarzanie sterowane planem a wytwarzanie zwinne Extreme programming Zwinne zarządzanie

Bardziej szczegółowo

In ż ynieria oprogramowania wykład II Modele i fazy cyklu życia oprogramowania

In ż ynieria oprogramowania wykład II Modele i fazy cyklu życia oprogramowania In ż ynieria oprogramowania wykład II Modele i fazy cyklu życia oprogramowania prowadzący: dr inż. Krzysztof Bartecki www.k.bartecki.po.opole.pl Proces tworzenia oprogramowania jest zbiorem czynności i

Bardziej szczegółowo

Zasady organizacji projektów informatycznych

Zasady organizacji projektów informatycznych Zasady organizacji projektów informatycznych Systemy informatyczne w zarządzaniu dr hab. inż. Joanna Józefowska, prof. PP Plan Definicja projektu informatycznego Fazy realizacji projektów informatycznych

Bardziej szczegółowo

I Twój zespół może być zwinny (choć to może trochę potrwać) Paweł Lipiński

I Twój zespół może być zwinny (choć to może trochę potrwać) Paweł Lipiński I Twój zespół może być zwinny (choć to może trochę potrwać) Paweł Lipiński pawel@warsjawa:/etc$whoami Ja: ponad 10 lat pracy w Javie SCJP, SCWCD, SCBCD, SCEA brałem udział w: rozwój oprogramowania, consulting,

Bardziej szczegółowo

Oferta szkoleń firmy Code Sprinters

Oferta szkoleń firmy Code Sprinters Oferta szkoleń firmy Code Sprinters Code Sprinters sp z o.o. Królewska 2/2 Kraków Telefon +48 12 379 34 14 Fax +48 12 379 34 11 info@codesprinters.com www.codesprinters.com Jako liderzy na rynku szkoleń

Bardziej szczegółowo

Proces wytwarzania oprogramowania

Proces wytwarzania oprogramowania Proces wytwarzania oprogramowania Proces wytwarzania oprogramowania Proces wytwarzania oprogramowania (zwany również cyklem wytwarzania oprogramowania) to proces tworzenia lub rekonstrukcji systemu informatycznego

Bardziej szczegółowo

Program szkolenia: Test Driven Development (TDD) using Spock or JUnit 5

Program szkolenia: Test Driven Development (TDD) using Spock or JUnit 5 Program szkolenia: Test Driven Development (TDD) using Spock or JUnit 5 Informacje: Nazwa: Test Driven Development (TDD) using Spock or JUnit 5 Kod: craft-test-tdd Kategoria: Testowanie automatyczne Grupa

Bardziej szczegółowo

Zarządzanie projektami. Wydanie II.

Zarządzanie projektami. Wydanie II. Zarządzanie projektami. Wydanie II. Autor: Nancy Mingus Dobierz najlepszy zespół i efektywnie kontroluj postępy pracy Zaplanuj szczegółowo każdy detal projektu i wprowadź go w życie Zastosuj skuteczne

Bardziej szczegółowo

Projektowanie zorientowane na uŝytkownika

Projektowanie zorientowane na uŝytkownika Uniwersytet Jagielloński Interfejsy graficzne Wykład 2 Projektowanie zorientowane na uŝytkownika Barbara Strug 2011 Hall of shame Hall of shame Model wodospad Feedback Problem z modelem waterfall Projektowanie

Bardziej szczegółowo

Wzorce projektowe i refaktoryzacja

Wzorce projektowe i refaktoryzacja Wzorce projektowe i refaktoryzacja Paweł Kozioł p.koziol@students.mimuw.edu.pl 18.01.2005 Moja praca magisterska Narzędzie dla środowiska Eclipse wspierające stosowanie wzorców projektowych J2EE Prowadzący:

Bardziej szczegółowo

Innowacja pedagogiczna dla uczniów pierwszej klasy gimnazjum Programowanie

Innowacja pedagogiczna dla uczniów pierwszej klasy gimnazjum Programowanie Innowacja pedagogiczna dla uczniów pierwszej klasy gimnazjum Programowanie Opracował Ireneusz Trębacz 1 WSTĘP Dlaczego warto uczyć się programowania? Żyjemy w społeczeństwie, które coraz bardziej się informatyzuje.

Bardziej szczegółowo

Przedsięwzięcia Informatyczne w Zarządzaniu

Przedsięwzięcia Informatyczne w Zarządzaniu Przedsięwzięcia Informatyczne w Zarządzaniu 2005/06 dr inż. Grażyna Hołodnik-Janczura GHJ 1 LITERATURA 1. Praca zbiorowa p.r. Górski J., Inżynieria oprogramowania, MIKOM, W-wa, 2000 2. Jaszkiewicz A.,

Bardziej szczegółowo

Praktyczne doświadczenia couchingu związanego z innowacyjnym programem nauczania mechatroniki w gimnazjum

Praktyczne doświadczenia couchingu związanego z innowacyjnym programem nauczania mechatroniki w gimnazjum Anna Kozłowska Wyższa Szkoła Gospodarki w Bydgoszczy i w Toruniu Praktyczne doświadczenia couchingu związanego z innowacyjnym programem nauczania mechatroniki w gimnazjum W ramach realizacji projektu:

Bardziej szczegółowo

Scrum. Zwinna metodyka prowadzenia projektów

Scrum. Zwinna metodyka prowadzenia projektów Scrum Zwinna metodyka prowadzenia projektów Plan prezentacji 1. Ogólna idea 2. Najważniejsze elementy 3. Role 4. Czynności 5. Artefakty 6. Wnioski 7. Literatura Źródło ilustracji: http://commons.wikimedia.org/wiki/file:scrum.jpg

Bardziej szczegółowo