eGospodarka.pl
eGospodarka.pl poleca

eGospodarka.plGrupypl.comp.programmingPorównanie różnych języków › Re: Porównanie różnych języków
  • Path: news-archive.icm.edu.pl!news.icm.edu.pl!fu-berlin.de!postnews.google.com!i6g200
    0vbh.googlegroups.com!not-for-mail
    From: Andrzej Jarzabek <a...@g...com>
    Newsgroups: pl.comp.programming
    Subject: Re: Porównanie różnych języków
    Date: Mon, 19 Dec 2011 05:16:36 -0800 (PST)
    Organization: http://groups.google.com
    Lines: 75
    Message-ID: <1...@i...googlegroups.com>
    References: <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>
    <u...@4...com>
    <jcklfo$gl3$1@inews.gazeta.pl> <jcm20g$8fl$1@node2.news.atman.pl>
    NNTP-Posting-Host: 195.11.67.225
    Mime-Version: 1.0
    Content-Type: text/plain; charset=ISO-8859-2
    Content-Transfer-Encoding: quoted-printable
    X-Trace: posting.google.com 1324300597 32330 127.0.0.1 (19 Dec 2011 13:16:37 GMT)
    X-Complaints-To: g...@g...com
    NNTP-Posting-Date: Mon, 19 Dec 2011 13:16:37 +0000 (UTC)
    Complaints-To: g...@g...com
    Injection-Info: i6g2000vbh.googlegroups.com; posting-host=195.11.67.225;
    posting-account=jr5y-woAAAAWidgVjrSJ6j8m650CTb-v
    User-Agent: G2/1.0
    X-Google-Web-Client: true
    X-Google-Header-Order: CUHARLSNK
    X-HTTP-UserAgent: Mozilla/5.0 (Windows NT 6.1; WOW64) AppleWebKit/535.7 (KHTML, like
    Gecko) Chrome/16.0.912.63 Safari/535.7,gzip(gfe)
    Xref: news-archive.icm.edu.pl pl.comp.programming:194310
    [ ukryj nagłówki ]

    On Dec 19, 12:54 am, bartekltg <b...@g...com> wrote:
    > W dniu 2011-12-18 13:14, Andrzej Jarzabek pisze:
    >
    > > Co do problemu 50 programistów, to XP i (w mniejszym stopniu) Scrum
    > > skalują się na wielkość zespołu do powiedzmy 12-16 programistów. Da się
    > > je zastosować do większych projektów, pod warunkiem, że da się podzielić
    > > zespół. To nie jest takie hop-siup, które można zrobić mechanicznym
    > > dzieleniem, bo każdy zespół musi mieć pewną autonomię i być właścicielem
    > > swojego codebase: w praktyce musi tworzyć oddzielny "produkt"
    > > (komponent), i w takiej sytuacji jeden zespół jest "klientem" drugiego,
    >
    > Jednym słowem, najpierw trzeba wszytko dobrze i poprawnie wszytko
    > zaprojektować, następnie do klocków które nam powstały podesłać
    > programistów mówiąc 'róbta XP'.

    Nie wiem, co rozumiesz przez "dobrze i poprawnie wszystko
    zaprojektować". Jeśli "wszystko" oznacza faktycznie wszystko, tzn.
    cały system, każdy z jego komponentów, każdy z podkomponentów tych
    komponentów i tak dalej przez wszystkie poziomy, to odpowiedź brzmi
    "nie". W wielu przypadkach nie potrzebujesz literalnie wszystkiego
    (albo nawet w grubym przybliżeniu wszystkiego) projektować, żeby
    stworzyć listę czterech czy pięciu "loosely coupled" komponentów, z
    których składać się będzie system - a o tylu mowa, skoro dzielimy 50-
    osobowy zespół na zespoły maksymalnie 16-osobowe (licząc tylko
    programistów), przy czym być może mamy jeden zespół nie tworzący
    żadnego komponentu tylko zajmujący się integracją produktu.

    Jeśli "wszystko zaprojektować" znaczy "zaprojektować system jako
    całość" - bez wdawania się w szczegóły, to tak.

    Jeśli według ciebie "zaprojektować dobrze i poprawnie" znaczy "na
    najwyższym możliwym poziomie abstrakcji", czyli powiedzmy narysować na
    tablicy pięć prostokątów, reprezentujących logiczne komponenty
    projektowanego systemu, wypunktować w każdym w kilku punktach po
    jednym zdaniu czym te komponenty mają się zajmować, i ewentualnie
    połączyć je jakimiś kreskami czy strzałkami oznaczającymi zależności,
    to tak, należy "zaprojektować dobrze i poprawnie". Ale też właśnie XP
    (i Agile jakoś tam w ogólności) twierdzi, że takie projektowanie jest
    właśnie dobre i poprawne i tak należy robić.

    Jeśli "zaprojektować dobrze i poprawnie" dla ciebie oznacza co innego,
    to przykro mi, nie potrafię odpowiedzieć na to pytanie, bo umiem
    czytać w myślach.

    > Bo sensowność mi umyka. Zwłaszcza, że wyrzucamy
    > pracowicie zrobiony projekt i nie kodujemy wg jego założeń, ale
    > wg tego, co druga grupa z nami konsultuje.

    Jaki projekt? Jeśli chodzi o ten projekt, na którym narysowano
    prostokąt i napisano w nim powiedzmy "interfejs do systemu SWIFT", to
    niby dlaczego zespół robiący interfejs do systemu SWIFT miałby go
    wyrzucić?

    Uprzedzając: zanim napiszesz, że "czasem się nie da bez zrobienia
    dużego, szczegółowego projektu, stwierdzić, jak można sensownie
    podzielić system na komponenty tworzone przez autonomiczne zespoły",
    to odpowiem - być może czasem się nie da. W takich przypadkach po
    prostu nie należy stosować XP. Z mojego doświadczenia wynika, że w
    bardzo wielu przypadkach się da, a nawet że często jest to i tak
    robione, nawet jeśli nie stosuje się żadnej metodologii agile. To
    raczej monolityczne zespoły z 50 programistami są rzadkością, nawet
    przy tworzeniu względnie dużych systemów.

Podziel się

Poleć ten post znajomemu poleć

Wydrukuj ten post drukuj


Następne wpisy z tego wątku

Najnowsze wątki z tej grupy


Najnowsze wątki

Szukaj w grupach

Eksperci egospodarka.pl

1 1 1

Wpisz nazwę miasta, dla którego chcesz znaleźć jednostkę ZUS.

Wzory dokumentów

Bezpłatne wzory dokumentów i formularzy.
Wyszukaj i pobierz za darmo: