UML - co wypada znać programiście?

0

Mam już kilka lat doświadczenia jako programista C++/C#. Chciałbym aplikować do firmy, która w ogłoszeniu wpisała UML jako wymaganą znajomość. Czy dla programisty jest sens uczenia się czegokolwiek z UML poza diagramami klas? Przeglądam różne strony i czytam dosyć odmienne opinie od "UML jest niepotrzebny" do "ucz się 9 diagramów, wszystko jest istotne".

0

Właściwie to programista powinien dostać UML od architekta systemu, i na tej podstawie pisać oprogramowanie, i tworzyć ewentualnie dodatkowe UML które opisują już algorytmy najniższego poziomu których nie da się uprościć / podzielić na kolejne algorytmy. Natomiast w naszej rzeczywistości często jest tak, że architekt i programista to jedno i to samo / ta sama osoba. Więc to zależy - czy będziesz tylko programistą, czy także architektem.

The key difference between developer and architect roles:
http://www.codingthearchitecture.com/2008/02/11/the_key_difference_between_developer_and_architect_roles.html

0

No tak, ale czy nawet architekt softu musi znać 12 diagramów strukturalnych i 11 behawioralnych? Pytanie brzmi raczej które diagramy są najbardziej istotne z punktu IT bo UML jest wykorzystywany nie tylko w tej branży.

Ktoś na wikipedii napisał, że przy projektowaniu aplikacji korzysta się głównie z diagramów: Przypadków użycia, Sekwencji, Klas i Czynności. Na ile to prawda - nie wiem bo różne źródła podają różne odpowiedzi. Trochę się obawiam, że nauczę się tych czterech po czym na rozmowie będę musiał użyć też innych i polegnę. Na pewno wszystkich nie będę się uczył bo szkoda czasu, życia i energii.

2

To jest w sumie trudna odpowiedź, bo tutaj dużo zależy od kultury w danej firmie, wypracowanych procedur pracy. Najlepiej moim zdaniem byłoby przyznać się, że z UML się nie miało za dużo do czynienia, ale jest się chętnym do poznania nowej wiedzy. Trudno oczekiwać od kandydata spełnienia wszystkich wymagań, szczególnie przy takim rynku pracownika w IT, jaki jest teraz. Natomiast jak się na szybko pouczysz teorii i będziesz na rozmowie zgrywał specjalistę, to kłamstwo szybko może wyjść.

2

Gorzej jak znasz za dobrze ;) Przełożony się upierał żeby mu zrobić diagram UML , chociaż wszyscy którym przedstawiałam dość prostą ideę zwykłymi słowami rozumieli o co chodzi. No to wzięłam książkę żeby czegoś nie pomylić i wyrysowałam dwa piękne diagramy, niech ma. Patrzy na diagram klas i z pełnym przekonaniem mówi to jest pewnie schemat bazy danych....

2
TomRZ napisał(a):

Właściwie to programista powinien dostać UML od architekta systemu, i na tej podstawie pisać oprogramowanie, i tworzyć ewentualnie dodatkowe UML które opisują już algorytmy najniższego poziomu których nie da się uprościć / podzielić na kolejne algorytmy. Natomiast w naszej rzeczywistości często jest tak, że architekt i programista to jedno i to samo / ta sama osoba. Więc to zależy - czy będziesz tylko programistą, czy także architektem.

Ten UML od architekta to wymysł lat 90-tych - nigdy dobrze nie działał, już chyba nawet w najtwardszym betonie został zarzucony.
Nasza rzeczywistość jest całkiem OK - wszyscy jesteśmy architektami.
Jeśli firma faktycznie mocno używa UML - to ja bym uciekał - jest duże ryzyko, że straszą tam starzy germańscy architekci.
Z drugiej strony rekruterzy często powielaja ten UML od lat w ogłoszeniach, więc może to tylko ściema.

0

Raz się tylko spotkałem z sytuacją gdzie ktoś faktycznie malował diagramy i w ogóle robił taki full-blown design przed pisaniem kodu, ale to bardzo specyficzna sytuacja -> http://wwwis.win.tue.nl/2R690/doc/ECSS-E-ST-40C(6March2009).pdf
Więc jest to jest jakaś firma aerospace to jestem w stanie sobie wyobrazić że faktycznie będą od ciebie wymagać malowania diagramów.

1

UML? Jaki UML. Na oczy tego po studiach nie widziałem.

0
Shalom napisał(a):

Raz się tylko spotkałem z sytuacją gdzie ktoś faktycznie malował diagramy i w ogóle robił taki full-blown design przed pisaniem kodu, ale to bardzo specyficzna sytuacja -> http://wwwis.win.tue.nl/2R690/doc/ECSS-E-ST-40C(6March2009).pdf
Więc jest to jest jakaś firma aerospace to jestem w stanie sobie wyobrazić że faktycznie będą od ciebie wymagać malowania diagramów.

Rozszerzyłbym to na automotive, kolejnictwo czy generalnie firmy, które są w stanie swoim kodem kogoś zabić.

0

Z niewielkiego bo niewielkiego, ale nadal mojego doświadczenia wynika, że podstawy UML'a są raczej ważne, ale tylko podstawy. Może i na studiach większą wage do tego wszystkiego przykładają, ale później jak narysujesz złą strzałkę, albo gdzie zamiast przerywanej lini narysujesz ciągłą to będzie wszystko nadal ok ;).
A tak przy okazji, znacie może jakiś program, w którym robienie różnego typu diagramów UML nie jest udręką?

1

Jeśli chodzi o darmowe, to we wszystkich tworzenie diagramów jest mniejsza lub większa udręką, ja używam jak muszę:
https://www.draw.io/

z komercyjnych najbardziej mi się podoba Visual Paradigm

1 użytkowników online, w tym zalogowanych: 0, gości: 1