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 .
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 😉