Efektywne tworzenie oprogramowania 2008/2009. Forty Years of Software Engineering Konferencja w Garmisch – 1968 50 uczestników Prof. Bauer TUM przewodniczący.

Slides:



Advertisements
Podobne prezentacje
Agile w praktyce, czyli jak to robimy naprawdę
Advertisements

Inżynieria Oprogramowania
Zarządzanie konfiguracją oprogramowania
Opis metodyki i procesu produkcji oprogramowania
Copyright © 2006 Quest Software Wybrane Narzędzia z Oferty Quest Software Dedykowane dla Baz Danych MACIEJ POGORZELSKI.
Support.ebsco.com Przewodnik Mój folder EBSCOhost (My EBSCOhost) Przewodnik.
Dodawanie i usuwanie oprogramowania
Projektowanie i implementacja programów obsługujących gniazdka Wykład II Zbigniew Brożbar Paweł Baranowski.
SIECI KOMPUTEROWE (SieKom) PIOTR MAJCHER WYŻSZA SZKOŁA ZARZĄDZANIA I MARKETINGU W SOCHACZEWIE Zarządzanie.
Zarządzanie Wersjami Na przykładzie pakietu Microsoft Visual SourceSafe 6.0 (VSS) Krzysztof Trela, s1761.
WITAM NA SZKOLENIU Porady na dziś i jutro.
Zarządzanie konfiguracją Doskonalenie Procesów Programowych Wykład 6 Copyright, 2001 © Jerzy.
J. Nawrocki, Inżynieria oprog. Plan wykładu Praktyki XP Wcześniejsze badania Personal Software Process eXtremme Programming Opis eksperymentu WynikiPodsumowanie.
Systemy operacyjne.
Inżynieria Oprogramowania dla Fizyków
Gimnazjum nr 4 im. Kardynała Stefana Wyszyńskiego w Tychach
Systemy zarządzania treścią CMS
1 Podstawy informatyki H. P. Janecki- 2006_ Systemy Operacyjne W6.
SYSTEM KONTROLI FREKWENCJI
RAPORT DOTYCZĄCY EWALUACJI
SIEĆ P2P 1. Definicja sieci równouprawnionej. To taka sieć, która składa się z komputerów o takim samym priorytecie ważności, a każdy z nich może pełnić.
Promotor: dr.inż. Aleksandra Werner
Organizacja seminarium dyplomowego inżynierskiego
Continuous Integration
Kompilator SDCC i Pakiet STRC52 Mgr inż. Aleksander Pruszkowski
WebQuest wykonane w ramach projektu BelferOnLine
Spis treści Rodzaje zespołów i terminy pracy. Cele zespołów Formy pracy Podsumowanie.
Główne cechy systemu Integracja z systemem RCP Przejrzysty moduł raportowania pozwalający wyświetlać zarejestrowane zdjęcia wraz z raportem czasu pracy.
Microsoft Solution Framework
Wybrane zagadnienia relacyjnych baz danych
Podstawowe informacje o maturze dla gimnazjalistów.
Rational Unified Process Implementacja Aleksandra Reiman, gr. I-52.
System synchronizacji oraz współdzielenia plików pomiędzy wieloma użytkownikami oraz urządzeniami poprzez sieć Internet Rafał Olszewski Promotor: Mgr inż.
Title Slide 1 It starts with you
Propozycja projektu Andrzej Ziółkowski.
Podstawy programowania
C++.
Seminarium Dyplomowe Jacek Fohs.
Bazy i Systemy Bankowe Sp. z o.o. ul. Kasprzaka 3, 85 – 321 Bydgoszcz
Archiwizacja bazy danych
Komputerowe wspomaganie projektowania
Projektowanie Aplikacji Internetowych
Jednym z podstawowych celów tworzenia sieci komputerowych jest współdzielenie zasobów, takich jak pliki lub drukarki. Każdy z takich zasobów musi być udostępniony,
Technikum nr 3 w Zespole Szkół nr 5 w Rudzie Śląskiej
ŁUKASZ DZWONKOWSKI Modele zwinne i ekstremalne. Podejście tradycyjne
Administracja systemami operacyjnymi Wiosna 2015 Wykład 1 Organizacja zajęć dr inż. Wojciech Bieniecki Instytut Nauk Ekonomicznych i Informatyki
Treści multimedialne - kodowanie, przetwarzanie, prezentacjaOdtwarzanie treści multimedialnych Andrzej Majkowski informatyka +
Systemy kontroli wersji
1. Logowanie z usługą Active Directory. a) logowanie do domeny Windows 2003 Server odbywa się znacznie szybciej niż w poprzednich wersjach. b) nie ma odwołania.
Najwa ż niejsze informacje oprac. Emilia Buczak na podstawie materiałów CKE oraz wewnątrzszkolnego regulaminu maturalnego.
Copyright © Jerzy R. Nawrocki Team Software Process Inżynieria oprogramowania II Wykład.
Programowanie w językach skryptowych
Efektywne tworzenie oprogramowania 2008/2009 cvs.ii.uni.wroc.pl/eto2008.
Lekcje z komputerem, 2006.
RAPORT Z EWALUACJI WEWNĘTRZNEJ ROK SZKOLNY 2014/2015.
Przewodnik Zastosowanie folderu Moje EBSCOhost
T ESTY JEDNOSTKOWE W C# Alicja Majka, A GENDA Wprowadzenie do środowiska Czym są testy jednostkowe i po co je stosować? XUnit, NUnit Pokrycie.
E-Learning. Co to jest e-learning? E-learning jest to metoda nauczania na odległość z wykorzystaniem technologii komputerowych i Internetu. Pozwala na.
E - Dziennik. Czym jest e - Dziennik To nowoczesny i prosty w obsłudze system kontroli frekwencji i ocen uczniów. Dzięki niemu każdy rodzic ma bieżący.
Innowacyjne metody zarządzania jakością oprogramowania Przeglądy oprogramowania i standard IEEE 1028 Bartosz Michalik
InMoST Wielkopolska sieć współpracy w zakresie innowacyjnych metod wytwarzania oprogramowania Termin realizacji: – Innowacyjne metody.
Analiza, projekt i częściowa implementacja systemu wspomagania pracy Referatu Reprografii Promotor: mgr inż. Dariusz OlczykWykonała: Katarzyna Ściwiarska.
Programowanie strukturalne i obiektowe Klasa I. Podstawowe pojęcia dotyczące programowania 1. Problem 2. Algorytm 3. Komputer 4. Program komputerowy 5.
Hipertekst HTML WWW.
Zarządzanie projektami informatycznymi
Jak poprawić jakość kształcenia w obszarze Business Informatics
PROGRAMY DO KONTROLI RODZICIELSKIEJ
PROGRAMY DO KONTROLI RODZICIELSKIEJ
Wskaż wybrany krok lub kliknij Enter aby dowiedzieć się więcej.
[Nazwa projektu] Analiza zamknięcia
Zapis prezentacji:

Efektywne tworzenie oprogramowania 2008/2009

Forty Years of Software Engineering Konferencja w Garmisch – uczestników Prof. Bauer TUM przewodniczący Randell i Naur – redaktorzy raportu

SE Garmisch 1968 Nie było w tym czasie: Komputerów osobistych Baz danych Sieci komputerowych lokalnych Internetu Powstawał ARPANET

ICSE 2008 Randell, Broy, Naur o konferencji w Garmisch i jej następstwach Kanada, Japonia, Wlk Brytania, Indie, Niemcy – panel na temat „Certification of Software Profesionals”

ETO – zasady (1) Obecność na wykładzie jest obowiązkowa: wstęp do pracy na ćwiczeniach (np. dzisiaj dot. stylu kodowania oraz mierzenia czasu) pierwsze 10 minut (kilkakrotnie) kartkówki aktywność, referaty prezentacja projektu wykonanego przez zespoły 40% oceny z egzaminu

ETO – zasady (2) Ćwiczenia/laboratorium: prace indywidualne (zadania, ewaluacja, referaty) praca zespołowa –w parach (XP) –w projekcie (zespół 3-5 osób) Praca w parach: ok. 1-3 godzin tygodniowo (2 osoby siedzą przy jednym komputerze)

ETO – zasady (3) Tworzenie zespołów: najlepiej wspólny język programowania co najmniej (oprócz zajęć) 2 wspólne terminy spotkań całego zespołu (2 godz; 15 minut) tygodniowo w zespole powinien być koordynator/szef; w pełni „demokratyczny” zespół nie sprawdza się

ETO – zasady (4) Przy kolejnych zadaniach jest określone, które elementy muszą być uwzględnione. Na przykład: Podano ostateczny termin oddania rozwiązania; tzn. zadanie oddane 1 minutę po terminie uważa się za nie oddane. Musi jednak być zrobione, gdyż kolejne zadania są rozwinięciem poprzedniego.

ETO - strona Strona zajęć cvs.ii.uni.wroc.pl/eto2008 Zapoznać się z zasadami korzystania na cvs.ii.uni.wroc.pl Osoby, które decydują się uczęszczać na ETO, powinny się zarejestrować.

ETO - ankieta Na stronie Joel Spolsky’ego jest odnośnik do polskiej wersji tej strony; Na „polskiej stronie” jest przetłumaczony przez A. Koconia artykuł „Partyzancki_poradnik_rekrutacji.htm” Stamtąd są 2 pytania w ankiecie

Efektywne tworzenie oprogramowania Przy tworzeniu oprogramowania są ważne: infrastruktura procesy techniki J. R. Richardson, W. A. Gwaltney Jr., Sprzedaj swój program (Ship it)

Infrastruktura Infrastruktura obejmuje: –kontrole wersji –kompilację i konsolidację za pomocą skryptów (ciągłą) –pisanie i wykonywanie testów –śledzenie nowych funkcji –śledzenie błędów Od pierwszego dnia stosuj skrypty kompilacji i konsolidacji Make, Ant, NAnt, Rake Maven 2

Narzędzia i infrastruktura (1) programowanie „w piaskownicy” (por. DokuWiki) udostępnianie programów przez repozytorium komputer programisty …

Narzędzia i infrastruktura (2) Zarządzanie zasobami pilnujemy każdej wersji każdego pliku od samego początku projektu system zarządzania kodem źródłowym (system kontroli wersji, np. subversion) jeśli czegoś potrzebujesz, to zapisz w repozytorium (nie oszczędzaj miejsca na dysku) (MS Visual SourceSafe)

Narzędzia i infrastruktura (3) Początek pracy z SCM (Source Code Management) zapoznaj się z kilkoma systemami (np. Subversion, MS Visual Source Safe) naucz się korzystać przygotuj 1 stronę przewodnika, jak wykonać podstawowe czynności pokaż zespołowi (repozytorium, obszar roboczy, klient, serwer, odgałęzienie, znacznik, łączenie, blokowanie)

Narzędzia i infrastruktura (4) Skrypty kompilacji i konsolidacji Tworzymy listę kroków ręcznie prowadzonej kompilacji i konsolidacji Stopniowo zapisuj każdy krok w formie skryptu Automatyczna kompilacja i konsolidacja odbywa się bez udziału użytkownika Systemy ciągłej integracji: CruiseControl CruiseControl.NET sourceforge.net/projects/ccnet maven.apache.org/continuum

Śledzenie problemów (1) Regresja błędów – problem (błąd), który poprawiono powraca do kodu Opracuj test dla każdego błędu, który został poprawiony – zapobiegniesz regresji błędu Analizuj wyniki systemu kompilacji i konsoli. (wykorzystaj opcje wysyłania ) Bugzilla FogBugz

Śledzenie problemów (2) Twórz listę problemów (np. w bazie danych) W jakiej wersji powstał błąd Kto go zgłosił? Czy to poważny błąd? Czy błąd można odtworzyć? W jakim środowisku wykryto błąd? W której wersji wystąpił po raz pierwszy? Kto poprawił błąd? Kto sprawdził poprawkę?

Nowe funkcje Dodawaj nowe funkcje zgodnie z ich priorytetem Unikaj przerostu funkcjonalnego – funkcje muszą być na liście zadań i mieć określony priorytet

Testowanie Automatyzacja testów – XUnit Testowanie sterowane błędami Testowanie dymowe (w systemach ciągłej integracji) Testy imitujące klienta