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).
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… ).
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ć?
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
{5085975:64KN4B9L};{5085975:QEGGUWKX}
apa
author
asc
no
11773
%7B%22status%22%3A%22success%22%2C%22updateneeded%22%3Afalse%2C%22instance%22%3A%22zotpress-3a2315854bfade8929a1d089b41904fa%22%2C%22meta%22%3A%7B%22request_last%22%3A0%2C%22request_next%22%3A0%2C%22used_cache%22%3Atrue%7D%2C%22data%22%3A%5B%7B%22key%22%3A%2264KN4B9L%22%2C%22library%22%3A%7B%22id%22%3A5085975%7D%2C%22meta%22%3A%7B%22creatorSummary%22%3A%22Robert%20C.%20Martin%22%2C%22parsedDate%22%3A%222003%22%2C%22numChildren%22%3A1%7D%2C%22bib%22%3A%22%3Cdiv%20class%3D%5C%22csl-bib-body%5C%22%20style%3D%5C%22line-height%3A%202%3B%20padding-left%3A%201em%3B%20text-indent%3A-1em%3B%5C%22%3E%5Cn%20%20%3Cdiv%20class%3D%5C%22csl-entry%5C%22%3ERobert%20C.%20Martin.%20%282003%29.%20%3Ci%3EUML%20for%20Java%20programmers%3C%5C%2Fi%3E.%20Prentice%20Hall%20PTR.%3C%5C%2Fdiv%3E%5Cn%3C%5C%2Fdiv%3E%22%2C%22data%22%3A%7B%22itemType%22%3A%22book%22%2C%22title%22%3A%22UML%20for%20Java%20programmers%22%2C%22creators%22%3A%5B%7B%22creatorType%22%3A%22author%22%2C%22name%22%3A%22Robert%20C.%20Martin%22%7D%5D%2C%22abstractNote%22%3A%22%22%2C%22date%22%3A%222003%22%2C%22language%22%3A%22%22%2C%22ISBN%22%3A%22978 – 0‑13 – 142848‑5%22%2C%22url%22%3A%22%22%2C%22collections%22%3A%5B%5D%2C%22dateModified%22%3A%222022 – 10-21T14%3A54%3A21Z%22%7D%7D%2C%7B%22key%22%3A%22QEGGUWKX%22%2C%22library%22%3A%7B%22id%22%3A5085975%7D%2C%22meta%22%3A%7B%22creatorSummary%22%3A%22Robert%20C.%20Martin%22%2C%22parsedDate%22%3A%222018%22%2C%22numChildren%22%3A1%7D%2C%22bib%22%3A%22%3Cdiv%20class%3D%5C%22csl-bib-body%5C%22%20style%3D%5C%22line-height%3A%202%3B%20padding-left%3A%201em%3B%20text-indent%3A-1em%3B%5C%22%3E%5Cn%20%20%3Cdiv%20class%3D%5C%22csl-entry%5C%22%3ERobert%20C.%20Martin.%20%282018%29.%20%3Ci%3ECzysta%20architektura%20Struktura%20i%20design%20oprogramowania%20Przewodnik%20dla%20profesjonalist%26%23xF3%3Bw%3C%5C%2Fi%3E%20%28Wojciech%20Moch%2C%20Trans.%29.%20Helion%20SA.%3C%5C%2Fdiv%3E%5Cn%3C%5C%2Fdiv%3E%22%2C%22data%22%3A%7B%22itemType%22%3A%22book%22%2C%22title%22%3A%22Czysta%20architektura%20Struktura%20i%20design%20oprogramowania%20Przewodnik%20dla%20profesjonalist%5Cu00f3w%22%2C%22creators%22%3A%5B%7B%22creatorType%22%3A%22author%22%2C%22name%22%3A%22Robert%20C.%20Martin%22%7D%2C%7B%22creatorType%22%3A%22translator%22%2C%22name%22%3A%22Wojciech%20Moch%22%7D%5D%2C%22abstractNote%22%3A%22%22%2C%22date%22%3A%222018%22%2C%22language%22%3A%22PL%22%2C%22ISBN%22%3A%2278 – 83-283‑4226‑2%22%2C%22url%22%3A%22%22%2C%22collections%22%3A%5B%5D%2C%22dateModified%22%3A%222022 – 10-21T14%3A56%3A56Z%22%7D%7D%5D%7D
Robert C. Martin. (2003). UML for Java programmers. Prentice Hall PTR.
Robert C. Martin. (2018). Czysta architektura Struktura i design oprogramowania Przewodnik dla profesjonalistów (Wojciech Moch, Trans.). Helion SA.
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.
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 😉