Pobieranie prezentacji. Proszę czekać

Pobieranie prezentacji. Proszę czekać

Od badań uczelnianych do innowacyjności w firmach Instytut Informatyki, Politechnika Poznańska Seminarium projektu InMoST 28 października 2005 Instytut.

Podobne prezentacje


Prezentacja na temat: "Od badań uczelnianych do innowacyjności w firmach Instytut Informatyki, Politechnika Poznańska Seminarium projektu InMoST 28 października 2005 Instytut."— Zapis prezentacji:

1 Od badań uczelnianych do innowacyjności w firmach Instytut Informatyki, Politechnika Poznańska Seminarium projektu InMoST 28 października 2005 Instytut Logistyki i Magazynowania w Poznaniu J. Nawrocki, Ł. Olek, M. Jasiński, B. Paliświat, B. Walter, B. Pietrzak, P. Godek

2 J.Nawrocki i inni, XPrince Kryzys oprogramowania LOOPLOOP ate oor quality ver budget vertime Loop Loop is dangerous.

3 J.Nawrocki i inni, XPrince Plan prezentacji  Wstęp  Struktura zespołu  Cykl życia projektu  Inżynieria wymagań i UC Workbench  Techniki programowania  Testy jednostkowe jako wymagania  Wykrywanie defektów w kodzie

4 J.Nawrocki i inni, XPrince XP Tom DeMarco "XP jest dzisiaj najważniejszym ruchem w IO." Extreme Programming (XP) = lekka (zwinna) lekka (zwinna) metodyka rozwoju oprogramowania metodyka rozwoju oprogramowania

5 J.Nawrocki i inni, XPrince Słabości Dyscyplina (Celebra)Zwinność (XP) Nadmiar papierów Powolny proces decyz. Mała elastyczność Opór przed zmianą Założenie „on-site customer” Brak spisanej dokumentacji Zbyt krótka perspektywa planu

6 J.Nawrocki i inni, XPrince Rozwiązanie Addison-Wesley, 2004. Barry Boehm Richard Turner Balancing Agility and Discipline A Guide for the Perplexed „ każde skuteczne przedsięwzięcie w zmieniającym się świecie wymaga zarówno zwinności, jak i dyscypliny ”

7 J.Nawrocki i inni, XPrince Studio Rozwoju Oprogramowania Politechnika Poznańska Wydział Informatyki i Zarządzania Studio Rozwoju Oprogramowania (od 1998) Produkty programist. Transfer technologii:  Dobre praktyki  Metody i narzędzia  Wzorce dokumentów

8 J.Nawrocki i inni, XPrince XPrince e X treme PR ogramming IN C ontrolled E nvironments Źródła XPrince XP PRINCE 2Rational Unified Process

9 J.Nawrocki i inni, XPrince Zespół XP Klient Coach Tracker Tester Programiści

10 J.Nawrocki i inni, XPrince Kierownik Zespołu Zespół Zarządzania Projektem w PRINCE2 Komitet sterujący Główny użytkownik Przewodn.Główny dostawca Kierownik projektu Nadzór projektu Kierownik zesp. Wsparcie projektu Raport Plan Raport Grupa zad.

11 J.Nawrocki i inni, XPrince Role w RUP Kierownik projektu Tester Programista Analityk Architekt

12 J.Nawrocki i inni, XPrince XP Prince2 Kierownik Zespołu Zespół XPrince Komitet sterujący Główny użytkownik Przewodn.Główny dostawca Kierownik = Coach Nadzór projektu Programiści Architekt Analityk = Klient

13 J.Nawrocki i inni, XPrince Plan prezentacji  Wstęp  Struktura zespołu  Cykl życia projektu  Inżynieria wymagań i UC Workbench  Techniki programowania  Testy jednostkowe jako wymagania  Wykrywanie defektów w kodzie

14 J.Nawrocki i inni, XPrince Cykl życia wg PRINCE2 16.1027.1123.018.0427.0517.061.07 Przyg. założ. proj. Inicjowanie projektu Etap 1Etap 2Etap 3Etap 4Zamk. Projektu

15 J.Nawrocki i inni, XPrince Wydanie 2Wydanie 1 Cykl życia wg XP Przyrost 1Przyrost 2Przyrost 1Przyrost 2

16 J.Nawrocki i inni, XPrince XP Prince2 Kierownik Zespołu Zespół XPrince Komitet sterujący Główny użytkownik Przewodn.Główny dostawca Kierownik = Coach Nadzór projektu Programiści Architekt Analityk = Klient

17 J.Nawrocki i inni, XPrince Fazy wg RUP Rozpoczęcie RozpracowanieKonstrukcjaWdrożenie

18 J.Nawrocki i inni, XPrince Cykl życia wg XPrince 16.1027.1123.018.0427.0517.068.07 Przyg. założ. proj. Cel i zakres Architek tura Wydanie 1 Wydanie 2 Wydanie 3 Zamkn. Projektu Modelowa nie biznesowe Przyrost 1 ZakresPrzyrost 2 Wdroż.

19 J.Nawrocki i inni, XPrince Plan prezentacji  Wstęp  Struktura zespołu  Cykl życia projektu  Inżynieria wymagań i UC Workbench  Techniki programowania  Testy jednostkowe jako wymagania  Wykrywanie defektów w kodzie

20 J.Nawrocki i inni, XPrince Ivar Jacobson ▪ 1967: Ericsson, systemy telefomunikacyjne ▪ 1985: Ph.D., Dep. of Computer Systems, The Royal Institute of Tech., Sztokholm ▪ 1987: Objectory AB ▪ 1995: Objectory AB łączy się z Rational Software ▪ 2003: IBM kupuje Rational

21 J.Nawrocki i inni, XPrince Ivar Jacobson Addison-Wesley, 1992

22 J.Nawrocki i inni, XPrince Przypadek użycia Wstępna rejestracja artykułu Scenariusz główny 1. System presents a registration form. 2. Author fills the form in. 3. System validates the data and returns a login and password. Rozszerzenia 3a. The data are in wrong format. 3a1. System displays a message and returns to step 2. Edycja przypadków użycia Generowanie prototypów typu mockup...

23 J.Nawrocki i inni, XPrince Przykładowy przypadek użycia UC1. Preliminary paper registration

24 J.Nawrocki i inni, XPrince ID Pełny opis Krótki opisAtrybut Rational RequisitePro

25 J.Nawrocki i inni, XPrince Edytor przypadków użycia

26 J.Nawrocki i inni, XPrince Edytor przypadków użycia

27 J.Nawrocki i inni, XPrince Eksperymentalna ocena 25% less 40% less

28 J.Nawrocki i inni, XPrince Zautomatyzowane przeglądy przypadków użycia Stranger Lazy actor Too short or too long scenarios Too many extensions Incomplete extensions Too much happiness Dangling functionality Outsider

29 J.Nawrocki i inni, XPrince Czy wymagania są zrozumiałe?

30 J.Nawrocki i inni, XPrince Generacja makiet

31 J.Nawrocki i inni, XPrince Generacja makiet Makieta = przypadki użycia + formatki

32 J.Nawrocki i inni, XPrince Kontrola przeglądów

33 J.Nawrocki i inni, XPrince Kompozytor SRS

34 J.Nawrocki i inni, XPrince Szacowanie nakładów Punkty use-case Wideband Delphi Gra planistyczna

35 J.Nawrocki i inni, XPrince UC Workbench  1,5 roku rozwoju  Nadal szybki rozwój  Wdrożenia:  projekt w PB Polsoft  Rozpowszechnianie:  Za darmo  http://www.ucworkbench.org http://www.ucworkbench.org

36 J.Nawrocki i inni, XPrince Plan prezentacji  Wstęp  Struktura zespołu  Cykl życia projektu  Inżynieria wymagań i UC Workbench  Techniki programowania  Testy jednostkowe jako wymagania  Wykrywanie defektów w kodzie

37 J.Nawrocki i inni, XPrince Programować parami czy indywidualnie? Programowanie indywidualne - Ind 1 osoba – 1 komputer – 1 zadanie Programowanie parami - XP 2 osoby – 1 komputer – 1 zadanie Programowanie Side-by-Side - SbS 2 osoby – 2 komputery – 1 zadanie

38 J.Nawrocki i inni, XPrince Zadania i proces  Aplikacje internetowe  System zarządzania artykułami konf. PapersOnLine  6 dni, około 8 godz. dziennie:  Dzień 0: „Praca domowa”  Dzień 1: Sprawdzian znajomości technologii  Dzień 2: Pomiar indywidualnej prędkości program.  Dni 3-4: Zdobywanie dośw. w programowaniu parami  Dni 5-6: Właściwy eksperyment i pomiar czasu

39 J.Nawrocki i inni, XPrince Średni CZAS programowania Ind XP SbS IndXPSbS

40 J.Nawrocki i inni, XPrince Średnia PRACOCHŁONNOŚĆ programowania Ind XP SbS IndXPSbS

41 J.Nawrocki i inni, XPrince Programować parami czy indywidualnie? Ind XP SbS Wniosek: Elastyczna metodyka programowania powinna udostępniać wszystkie ‘ tryby’ programowania:  indywidualny,  programowanie parami w stylu XP i  programowanie Side-by-Side.

42 J.Nawrocki i inni, XPrince Plan prezentacji  Wstęp  Struktura zespołu  Cykl życia projektu  Inżynieria wymagań i UC Workbench  Techniki programowania  Testy jednostkowe jako wymagania  Wykrywanie defektów w kodzie

43 J.Nawrocki i inni, XPrince Integracja powtórnego użycia i test-first coding public void testStack(){ for (int k=0; k <10; k++){ call(„wloz", k, DONT_CARE); } for (int k = 0; k < 10; k++){ call(„zdejmij", 9 - k); }

44 J.Nawrocki i inni, XPrince Integracja powtórnego użycia i test-first coding java.util.Stack wloz = void push(Object) zdejmij = Object pop()

45 J.Nawrocki i inni, XPrince Prosty eksperyment 9 programistów 10 jednostek do znal. Opis w języku naturalnym public void testStack(){ for (int k=0; k <10; k++){ call(„wloz", k, DONT_CARE); } for (int k = 0; k < 10; k++){ call(„zdejmij", 9 - k); } JUnit

46 J.Nawrocki i inni, XPrince Prosty eksperyment - wyniki 9 z 10 jednostek – Poprawna i jednoznaczna charakterystyka ‘Trudna’ jednostka – klasa manipulująca łańcuchami

47 J.Nawrocki i inni, XPrince Plan prezentacji  Wstęp  Struktura zespołu  Cykl życia projektu  Inżynieria wymagań i UC Workbench  Techniki programowania  Testy jednostkowe jako wymagania  Wykrywanie defektów w kodzie

48 J.Nawrocki i inni, XPrince Przykry zapach „Przykry zapach jest symptomem niskiej jakości kodu, który wskazuje na konieczność refaktoryzacji” Martin Fowler Refactoring, Improving the designof existing code Addison-Wesley, 1999

49 J.Nawrocki i inni, XPrince Objawy przykrych zapachów Bad code smell Metryki Analiza drzewa składniowego Intuicja programisty Historia zmian w repozytorium Testy jednostkowe Obecność innych zapachów

50 J.Nawrocki i inni, XPrince XSmells  1,5 roku rozwoju  Wtyczka dla Eclipse  Wykrywanie 6 przykrych zapachów w Javie  Badania nad nowymi technikami wykrywania  Rozpowszechnianie:  Za darmo

51 J.Nawrocki i inni, XPrince XSmells

52 J.Nawrocki i inni, XPrince Podsumowanie  Kombinacja zwinnej metodyki (XP) ze zdyscyplinowaną (PRINCE2 i RUP) jest możliwa  Wsparcie narzędziowe (UC Workbench) jest ważne  Elastyczne podejście do programowania parami  Kombinacja powtórnego użycia z test-first coding.  Wczesne wykrywanie potencjalnych defektów w kodzie programów

53 J.Nawrocki i inni, XPrince Pytania?


Pobierz ppt "Od badań uczelnianych do innowacyjności w firmach Instytut Informatyki, Politechnika Poznańska Seminarium projektu InMoST 28 października 2005 Instytut."

Podobne prezentacje


Reklamy Google