-
Path: news-archive.icm.edu.pl!news.gazeta.pl!not-for-mail
From: Andrzej Jarzabek <a...@g...com>
Newsgroups: pl.comp.programming
Subject: Re: Porównanie różnych języków
Date: Sun, 18 Dec 2011 11:52:26 +0000
Organization: "Portal Gazeta.pl -> http://www.gazeta.pl"
Lines: 113
Message-ID: <jckk5p$cu8$1@inews.gazeta.pl>
References: <jbv8dl$fdd$1@news.icm.edu.pl>
<p...@4...com>
<jc04l3$a15$1@inews.gazeta.pl>
<6...@y...googlegroups.com>
<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>
<jcie6v$du3$1@inews.gazeta.pl>
<8...@z...googlegroups.com>
NNTP-Posting-Host: 5ac53ca3.bb.sky.com
Mime-Version: 1.0
Content-Type: text/plain; charset=ISO-8859-2; format=flowed
Content-Transfer-Encoding: 8bit
X-Trace: inews.gazeta.pl 1324209145 13256 90.197.60.163 (18 Dec 2011 11:52:25 GMT)
X-Complaints-To: u...@a...pl
NNTP-Posting-Date: Sun, 18 Dec 2011 11:52:25 +0000 (UTC)
X-User: septi
In-Reply-To: <8...@z...googlegroups.com>
User-Agent: Mozilla/5.0 (Windows NT 6.1; WOW64; rv:8.0) Gecko/20111105
Thunderbird/8.0
Xref: news-archive.icm.edu.pl pl.comp.programming:194243
[ ukryj nagłówki ]On 17/12/2011 22:51, Maciej Sobczak wrote:
> On Dec 17, 4:58 pm, Andrzej Jarzabek<a...@g...com>
> wrote:
>
>> Tak, generalnie polega to na tym, że programista rozmawia z OSCR tak
>> długo, żeby zrozumieć co program ma robić,
>
> I to jest właśnie problem tej metodologii, bo zakłada ciągłość tego
> procesu.
>
> Otóż ja mam taki defekt[*], że jak ktoś coś do mnie mówi, to już po
> kilku minutach nie pamiętam, o czym mówił na początku. Radzę sobię z
> krótką listą zakupów, ale dłuższe opisy mi się urywają.
>
> [*] Z obserwacji wynika, że nie tylko ja mam ten defekt. Akurat mamy
> weekend - stań przed jakimś kościołem i zapytaj wychodzących ludzi o
> czym było kazanie. Pamiętaj, że wszyscy słuchali tego samego, ale
> zapytaj kilka różnych osób.
> Dobre, nie?
>
> Pytanie: jak długa jest rozmowa z tym - jak mu tam - OSCR, żeby
> przekazać równoważnik kilkuset stron tekstu? Krócej, niż kazanie, czy
> dłużej?
Ale moment, ty to sobie wyobrażasz na zasadzie "kazanie" - programiści
siadają wszyscy w sali i klient im mówi od początku do końca jak program
ma działać, po czym bierze walizeczkę i idzie do domu?
W takiej sytuacji mogę tylko powiedzieć, że po prostu niee zrozumiałeś,
o co chodzi. On-site customer polega właśnie na tym, że pracuje razem z
zespołem, siedzi razem z zespołem w godzinach pracy i jeśli programiści
nie wiedzą jak coś konkretnie powinno działać, to idą i on im mówi. To
może równie dobrze trwać dwie minuty.
Ze szczegółowymi wymaganiami robi się tak, że rozbija się na małe
kawałki, tzw "user stories". Potem te stories się planuje i konkretni
programiści zajmujący się akurat implementacją konkretnej story
rozmawiają z OSRC na temat tego jak program ma działać we fragmencie
związanym z tą właśnie story.
>> a jeśli nie jest w stanie
>> zrozumieć czy ewentualne zachowanie jest prawidłowe, czy nie, to
>> rozmawia z OSCR jeszcze trochę.
>
> No właśnie.
> Otóż zaletą metodologii "dokumentacyjnych" jest to, że kiedyś,
> ostatecznie, *można się rozejść*. Bo nawet jeśli się odbiorcy się
> urwał wątek, to może sobie do niego wrócić we własnym zakresie i nie
> potrzebuje "rozmawiać z OSCR jeszcze trochę".
Jak "rozejść"? Jakiemu odbiorcy? Nie bardzo rozumiem, co masz na myśli.
On-site customer representative reprezentuje twojego klienta
(zewnętrznego, wewnętrznego lub wyobrażonego). Dopóki masz klienta, to
możesz mieć osobę reprezentującą to, co klient chce.
Jeśli z "rozejściem" chodziło o to, że programiści mogą się fizycznie
oddalić od OSCR, to przecież nie chodzi o to, że oni fizycznie
rozmawiają z nim cały czas. Rozmawiają tyle, ile potrzeba żeby się
dowiedzieli, czego nie wiedzą, zrozumieli, czego nie rozumieją, a co
jest im akurat potrzebne do zaimplementowania kolejnego kawałka
funkcjonalności, zanotowali co trzeba, a potem oddalili się do
stanowiska programistycznego i przelali to, co właśnie usłyszeli do
postaci tesów i kodu.
> Możliwość rozejścia się jest kluczowa dla postępu projektu. Bez tej
> możliwości albo masz zastój (znaczy: odbiorca "rozmawia jeszcze
> trochę" w nieskończoność), albo urwaną treść. Osobiście nie widzę
> siebie w rozmowie na temat czegoś, co na papierze ma kilkaset stron.
Ale jesteś w stanie przeczytać te kilkaset stron od deski do deski i
pamiętać każdy szczegół?
> Napisanie dokumentacji służy przekazaniu wiedzy i jest to proces,
> który może być zarówno kompletny, jak i obustronnie potwierdzony.
Pisanie acceptance testów też może być takim procesem.
> Minimalizacja bugów, jeśli w ogóle występuje, jest tu procesem
> pobocznym a nie celem samym w sobie. Celem minimalizacji bugów może
> być np. zastosowanie metod formalnych. Albo unit testy. Albo voo-doo.
> Albo co tam kto umie i czemu ufa, zależnie od budżetu i lokalnej
> kultury. Jednak żadna z tych metod nie wyklucza użycia dokumentacji,
> która służy tylko (i aż!) do skompletowania procesu przekazywania
> wiedzy.
> Dlatego nie ma problemu, żeby zrobić dokumentację *oraz* unit testy
> (przykładowo).
Problem jest taki, że masz ograniczone zasoby i musisz rozwiązać problem
efektywnego ich wykorzystania. Jeśli ktoś pisze dokumentację, to nie
może w tym samym czasie odpowiadać na pytania ani pisać testów. Porządne
pisanie kodu i testów może trwać dłużej niż pisanie byle jak: do tego
stopnie, że być może będziesz chciał np. tworzyć albo adaptować DSL-e
i/lub frameworki do tego, żeby można było automatyczne testy wyrazić w
sposób maksymalnie deklaratywny i przy użyciu domain concepts.
> Problem z agile polega na tym, że przekazywanie wiedzy oparte jest na
> machaniu rękami i jest to najsłabsze ogniwo z powodów powyżej. A
> ponieważ to ogniwo jest na początku procesu, to dalej buduje się na
> gównianych fundamentach i stąd te ciągłe dema i walenie klienta po
Nie jest na początku procesu. Jest cały czas.
Natomiast problem z pisaniem dokumentacji jest taki, że jest oparte na
machaniu rękami, a ponieważ dokumentację pisze się na początku, to dalej
buduje się na gównainych fundamentach i stąd te ciągłe opóźnienia i
dostarczanie po terminie "kompletnej" funkcjonalności kompletnie nie
odpowiadającej potrzebom klientów.
> głowie niedokończonymi wersjami.
> Pominięcie dokumentacji *nie jest tańsze*. Tak przynajmniej wynika z
> moich obserwacji.
Z moich wręcz przeciwnie.
Następne wpisy z tego wątku
- 18.12.11 12:14 Andrzej Jarzabek
- 18.12.11 12:18 Andrzej Jarzabek
- 18.12.11 12:49 Andrzej Jarzabek
- 18.12.11 13:06 Roman W
- 18.12.11 13:03 Roman W
- 18.12.11 13:10 Roman W
- 18.12.11 14:12 Andrzej Jarzabek
- 18.12.11 14:51 Andrzej Jarzabek
- 18.12.11 15:27 A.L.
- 18.12.11 15:28 A.L.
- 18.12.11 15:36 Andrzej Jarzabek
- 18.12.11 15:38 A.L.
- 18.12.11 15:40 Andrzej Jarzabek
- 18.12.11 15:40 A.L.
- 18.12.11 15:56 Stachu 'Dozzie' K.
Najnowsze wątki z tej grupy
- 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??
- Re: (PDF) Surgical Pathology of Non-neoplastic Gastrointestinal Diseases by Lizhi Zhang
- CfC 28th Ada-Europe Int. Conf. Reliable Software Technologies
- Młodzi programiści i tajna policja
- Ada 2022 Language Reference Manual to be Published by Springer
Najnowsze wątki
- 2024-11-04 GNSS Motorola G85 vs Redmi Note 9 pro
- 2024-11-04 Katowice => SAP BTP Consultant (mid/senior) <=
- 2024-11-04 Katowice => Spedytor międzynarodowy <=
- 2024-11-04 Warszawa => Specjalista/tka ds. Zamówień publicznych <=
- 2024-11-04 Poznań => QA Engineer <=
- 2024-11-04 Poznań => QA Inżynier <=
- 2024-11-04 Polskie sądy są bardzo wyrozumiałe...
- 2024-11-04 Wrocław => SAP Project System/EPPM Consultant <=
- 2024-11-04 Gliwice => Team Lead / Tribe Lead FrontEnd <=
- 2024-11-04 Kraków => Programista Full Stack (.Net Core) <=
- 2024-11-04 Kraków => Software .Net Developer <=
- 2024-11-04 Kraków => Programista Full Stack .Net <=
- 2024-11-04 Warszawa => Key Account Manager <=
- 2024-11-04 Warszawa => Spedytor Międzynarodowy <=
- 2024-11-04 Warszawa => E-COMMERCE specialist <=