Tym razem książka adresowana przez autora dla programistów (autor książki jest znany w sieci jako Uncle Bob) . Długo się nad nią zastanawiałem ale w końcu kupiłem i nie żałuję mimo, że napisana ponad dekadę temu. Po pierwsze jako projektant muszę (no powinienem ;)) znać ograniczenia oraz specyfikę narzędzia (Java). Po drugie jako analityk, nie raz sprawujący nadzór autorski nad developerem, muszę (no powinienem ;)) mieć z tymi ludźmi wspólny język.

Generalnie: to jest książka dla “analityków biznesowych” bo adresatami ich dokumentów są właśnie deweloperzy chcący skorzystać z tych dokumentów!

UML

Książka doskonale pokazuje to co zawsze mówię na szkoleniach: UML jako notacja jest nadmiarowa i nie wolno o tym zapominać (czasem mam wrażenie, że autorzy wielu diagramów, jako zadanie, postawili sobie użycie za wszelka cenę wszystkich symboli UML jakie zobaczyli).

UMLforJavaProgrammersDocsCartoon

Przypadki użycia

Jednym z najbardziej (po diagramie klas) nadużywanym jest diagram przypadków użycia. Na każdym szkoleniu zawsze mówię: to ma być prosty diagram, wszelkie extends, include, dziedziczenie to dzisiaj bełkot UML-owy (te związki powstały w latach 80-tych, gdy diagram UC był samodzielnym tworem, nie znającym diagramów klas czy komponentów… ).

UMLforJavaProgrammersUseCases

Po drugie kolejna ważna rzecz: w toku procesu tworzenia oprogramowania powstają modele pojęciowe (tak conceptual znaczy pojęciowy a nie konceptualny czy koncepcyjny!) oraz modele logiki i architektury. Autor książki opisuje dwa ostatnie, w końcu to książka dla programistów, ale nie zakazana dla analityków. Od siebie dodam, że w ramach analiz wymagań powstają modele pojęciowe i (nie raz uproszczone) architektura + logika (algorytmy, scenariusze).

O modelowaniu

Po co modelować?

UMLforJavaProgrammersWhyModel

Na zakończenie

Gorąco polecam programistom, by w ogóle zaczęli korzystać z UML a analitykom, by wyleczyli się z wielu mitów o UML rozpowszechnianych niestety na wielu, nie zawsze tanich, szkoleniach i w wielu kiepskich “poradnikach UML” (pisanych nie raz nawet przez uczelnianych doktorów i nie tylko)….. Może wtedy przestaną tworzyć nieprzydatne developerom dokumentacje. 

Poniżej także – o dziwo jest dostępna – wersja pdf do pobrania.

UML for Java Programmers, June 6, 2003 by Robert C. Martin (Author): papierowe wydanie na Amazonie i do pobrania pdf (pobieżne przejrzenie wersji pdf wskazuje że jest troszkę uboższa)

Polecam także pozycja po Polsku, z 2018 roku, tego samego autora .

Źródła

Jarosław Żeliński

Jarosław Żeliński: autor, badacz i praktyk analizy systemowej organizacji: Od roku 1991 roku, nieprzerwanie, realizuje projekty z zakresu analiz i projektowania systemów, dla urzędów, firm i organizacji. Od 1998 roku prowadzi samodzielne studia i prace badawcze z obszaru analizy systemowej i modelowania (modele jako przedmiot badań: ORCID). Od 2005 roku, jako nieetatowy wykładowca akademicki, prowadzi wykłady i laboratoria (ontologie i modelowanie systemów informacyjnych, aktualnie w Wyższej Szkole Informatyki Stosowanej i Zarządzania pod auspicjami Polskiej Akademii Nauk w Warszawie.) Oświadczenia: moje badania i publikacje nie mają finansowania z zewnątrz, jako ich autor deklaruję brak konfliktu interesów. Prawa autorskie: Zgodnie z art. 25 ust. 1 pkt. 1) lit. b) ustawy o prawie autorskim i prawach pokrewnych zastrzegam, że dalsze rozpowszechnianie artykułów publikowanych w niniejszym serwisie jest zabronione bez indywidualnej zgody autora (patrz Polityki Strony).

Ten post ma 2 komentarzy

  1. Piotr

    Rozumiem, że recenzowana książka jest dobrą książką o UMLu? Mimo że jest dosyć wiekowa, prawie lat ’90tych sięga.

    Może jeszcze jakieś przykłady dobrych materiałów o UML?
    P.

    1. Jaroslaw Zelinski

      UML się nie starzeje ;), jest masa lepszych lub gorszych streszczeń samej specyfikacji UML (z reguły gorszych), książek o praktycznym użyciu i korzyściach z tego płynących jest baaardzo mało. Ja mogę polecić jeszcze swój blog 😉

Dodaj komentarz

Witryna wykorzystuje Akismet, aby ograniczyć spam. Dowiedz się więcej jak przetwarzane są dane komentarzy.