-
Path: news-archive.icm.edu.pl!news.icm.edu.pl!plix.pl!newsfeed1.plix.pl!newspeer1.de.
telia.net!newspeer4.de.telia.net!de.telia.net!xlned.com!feeder5.xlned.com!feede
r3.cambriumusenet.nl!feed.tweaknews.nl!postnews.google.com!q11g2000vbq.googlegr
oups.com!not-for-mail
From: Maciej Sobczak <s...@g...com>
Newsgroups: pl.comp.programming
Subject: Re: Porównanie różnych języków
Date: Mon, 19 Dec 2011 05:47:47 -0800 (PST)
Organization: http://groups.google.com
Lines: 125
Message-ID: <1...@q...googlegroups.com>
References: <jbv8dl$fdd$1@news.icm.edu.pl> <jc0bd7$1or$1@inews.gazeta.pl>
<9...@y...googlegroups.com>
<jc0j9q$pnt$1@inews.gazeta.pl>
<0...@o...googlegroups.com>
<jc0qek$gis$1@inews.gazeta.pl>
<p...@4...com>
<a...@i...googlegroups.com>
<4...@o...googlegroups.com>
<6...@h...googlegroups.com>
<c...@u...googlegroups.com>
<jcklma$h1j$1@inews.gazeta.pl>
<f...@u...googlegroups.com>
<jcl6gj$ebh$1@inews.gazeta.pl>
<f...@d...googlegroups.com>
<b...@c...googlegroups.com>
NNTP-Posting-Host: 83.3.40.82
Mime-Version: 1.0
Content-Type: text/plain; charset=ISO-8859-2
Content-Transfer-Encoding: quoted-printable
X-Trace: posting.google.com 1324302467 18927 127.0.0.1 (19 Dec 2011 13:47:47 GMT)
X-Complaints-To: g...@g...com
NNTP-Posting-Date: Mon, 19 Dec 2011 13:47:47 +0000 (UTC)
Complaints-To: g...@g...com
Injection-Info: q11g2000vbq.googlegroups.com; posting-host=83.3.40.82;
posting-account=bMuEOQoAAACUUr_ghL3RBIi5neBZ5w_S
User-Agent: G2/1.0
X-Google-Web-Client: true
X-Google-Header-Order: HUALESNKRC
X-HTTP-UserAgent: Mozilla/5.0 (Macintosh; U; Intel Mac OS X 10.6; en-US; rv:1.9.2.13)
Gecko/20101203 Firefox/3.6.13,gzip(gfe)
Xref: news-archive.icm.edu.pl pl.comp.programming:194312
[ ukryj nagłówki ]On Dec 19, 1:33 pm, Andrzej Jarzabek <a...@g...com>
wrote:
> > > Acceptance tests mają takie ficzery.
>
> > Ale musiałoby ich być dokładnie tyle, ile byłoby tej dokumentacji,
> > której ma nie być.
>
> Dokładnie.
Nie tylko. Tych notatek z dyskusji też musi być dokładnie tyle samo
(bo informacji nie da się zredukować). I tego właśnie nie rozumiem.
Tradycyjna metoda polega na tym, że się pisze dokumentację, w której
zawarta jest wiedza nt. działania systemu. W agile piszemy notatki,
których jest *tyle samo* (nieredukowalność informacji, sorry, nie ja
stworzyłem świat). A przynajmniej w całej tej dyskusji nie padły żadne
przesłanki do stwierdzenia, że mogłoby ich być mniej.
I teraz okazuje się, że pomimo faktu, że będzie ich tyle samo i będzie
do tego potrzebny taki sam wysiłek pisarski, to musimy je koniecznie
wyrzucić do kosza i to najdalej parę godzin po napisaniu. To bardzo
ważne. Bo jeśli zapomnimy je wyrzucić i się zaczną nam zbierać, to
klient zobaczy plik kartek i jeszcze pomyśli, że my tu jakąś
dokumentację piszemy i okaże się, że król jest nagi a my wcale nie
jesteśmy agile.
Niech mi ktoś wytłumaczy, w czym napisanie notatek i wywalenie ich do
kosza jest lepsze od napisania ich i spięcia w segretatorze.
Pomijając fakt, że w kontekście biznesowym wyrzucanie *czegokolwiek*
do kosza to czysta głupota i zwykle się srogo mści w późniejszym
terminie.
To nie jest żadna metodologia, to jest usankcjonowana
nieodpowiedzialność.
> > Sęk w tym, że nie wszystko, co można napisać w dokumentacji, można
> > zdefiniować w formie testu.
>
> Bywa. Dlatego też zasada nie jest taka, że się w ogóle nie produkuje
> dokumentacji, tylko że dokumentuje się tylko to, czego absolutnie nie
> da się zapisać w postaci testu lub kodu.
Acha - czyli niektóre notatki zachowujemy w segregatorze. Wyrzucamy
(koniecznie!) tylko te, dla których udało nam się napisać acceptance
test.
Sorki, nie kupuję tego.
> Zakładając
> przykładowo, że masz jakiś system, który liczy przejeżdżające
> samochody na podstawie wejścia z jakichś sensorów, to można budować
> testy w oparciu o rzeczywiste lub symulowane dane z tych sensorów.
Ale klienta równo wali, czy to liczenie robi program, czy hardware,
czy krasnoludki. I w ogóle jaki sensor?
Właśnie w tym jest problem, że systemy przemysłowe opisuje się
całościowo, bo tylko w całości one są potrzebne. Wydzielanie granicy
pomiędzy sensorami a programem, jest sztucznym krokiem, który z punktu
widzenia klienta nic nie wnosi - dlatego nie wierzę, że OSCRowi będzie
się chciało robić taki test. OSCR tego nie widzi. On widzi samochody.
W ogóle mam wrażenie, że agile wraz z całą swoją kulturą testowania
jest bardzo nakierowany na założenie, że produktem jest jakiś program.
Pewnie działa to jakość w kontekście np. serwisu internetowego, ale w
większej skali produktem nie jest program, tylko system, w którym
granice pomiędzy jego technicznymi składnikami (np. sensor vs.
program) są niewidoczne dla klienta. I na tym się agile wyłoży.
> > Albo np. chciałbym, żeby "procesor dźwięku robił pogłos taki jak w
> > znanej sali pewnej filharmonii". Znowu jedno zdanie. Jak do tego
> > zrobić acceptance test?
>
> Bardzo prosto: dajesz OSCR-owi do odsłuchania ileś tam dźwięków
> przetworzonym z takim pogłosem, on ci potwierdza, że to brzmi jak
> odpowiednia filharmonia, piszesz test, który przetwarza dźwięk tym
> efektem i sprawdza, czy wyjście się zgadza.
Złapałeś się. :-) W przypadku pogłosu z filharmonii wyjście za każdym
razem się może nie zgadzać (i na tym polega jego urok) a stwierdzenie,
że coś brzmi tak samo jak coś innego jest subiektywne. Ten problem nie
dotyczy tylko akustyki, jest cała masa takich miejsc. Np. ekspres do
kawy ma robić dobrą kawę. Znowu nie ma jak zrobić acceptance testu.
> Przez "przemysłowe" rozumiesz staerowanie jakimiś maszynami w fabryce
> czy coś takiego?
Tak.
> Nie znam się na tym, ale chętnie dowiem się dlaczego
> tak uważasz.
Właśnie dlatego, że w takich systemach ich działanie opisuje się
całościowo. Agile jest za bardzo intruzywny i za bardzo zakłada, że
klient będzie chciał być zaangażowany (poprzez OSCRów) w definiowanie
tak drobno określonch szczegółów implementacyjnych.
> Jeśli chodzi o "rozrywkowe", to na pewno wiem, że testy automatyczne,
> jak i różne metodologie agile, stosuje się przy tworzeniu gier
> komputerowych - chyba się kwalifikują jako 'rozrywka'?
A tutaj to akurat ja się nie znam. Może profesor fir będzie wiedział.
--
Maciej Sobczak * http://www.msobczak.com * http://www.inspirel.com
Następne wpisy z tego wątku
- 19.12.11 14:04 Stachu 'Dozzie' K.
- 19.12.11 14:34 Andrzej Jarzabek
- 19.12.11 15:38 Roman W
- 19.12.11 15:52 Andrzej Jarzabek
- 19.12.11 16:48 Andrzej Jarzabek
- 19.12.11 16:50 Andrzej Jarzabek
- 19.12.11 18:11 Andrzej Jarzabek
- 19.12.11 22:20 Roman W
- 19.12.11 22:41 Maciej Sobczak
- 19.12.11 23:21 Maciej Sobczak
- 19.12.11 23:56 Roman W
- 20.12.11 00:37 Andrzej Jarzabek
- 20.12.11 01:02 Andrzej Jarzabek
- 20.12.11 01:51 Andrzej Jarzabek
- 20.12.11 12:16 Maciej Sobczak
Najnowsze wątki z tej grupy
- Alg. kompresji LZW
- Popr. 14. Nauka i Praca Programisty C++ w III Rzeczy (pospolitej)
- Arch. Prog. Nieuprzywilejowanych w pełnej wer. na nowej s. WWW energokod.pl
- 7. Raport Totaliztyczny: Sprawa Qt Group wer. 424
- TCL - problem z escape ostatniego \ w nawiasach {}
- Nauka i Praca Programisty C++ w III Rzeczy (pospolitej)
- testy-wyd-sort - Podsumowanie
- Tworzenie Programów Nieuprzywilejowanych Opartych Na Wtyczkach
- Do czego nadaje się QDockWidget z bibl. Qt?
- Bibl. Qt jest sztucznie ograniczona - jest nieprzydatna do celów komercyjnych
- Co sciaga kretynow
- AEiC 2024 - Ada-Europe conference - Deadlines Approaching
- Jakie są dobre zasady programowania programów opartych na wtyczkach?
- sprawdzanie słów kluczowych dot. zła
- Re: W czym sie teraz pisze programy??
Najnowsze wątki
- 2025-02-17 Kraków => MS Dynamics 365BC/NAV Developer <=
- 2025-02-17 Chrzanów => Programista NodeJS <=
- 2025-02-17 Warszawa => Node.js / Fullstack Developer <=
- 2025-02-17 Białystok => System Architect (Java background) <=
- 2025-02-17 Białystok => Solution Architect (Java background) <=
- 2025-02-17 Gliwice => Team Lead / Tribe Lead FrontEnd <=
- 2025-02-17 Gdańsk => PHP Developer <=
- 2025-02-17 Warszawa => Senior ASP.NET Developer <=
- 2025-02-17 Gliwice => Business Development Manager - Network and Network Security
- 2025-02-17 Mińsk Mazowiecki => Area Sales Manager OZE <=
- 2025-02-17 Odśnieżanie samochodu
- 2025-02-17 Katowice => Regionalny Kierownik Sprzedaży (OZE) <=
- 2025-02-17 Dęblin => JavaScript / Node / Fullstack Developer <=
- 2025-02-17 Pompiarze...
- 2025-02-16 PV teraz