Jak przydatny jest UML, jeśli jesteś programistą pracującym sam w projekcie?
Jak przydatny jest UML, jeśli jesteś programistą pracującym sam w projekcie?
Odpowiedzi:
Może to być bardzo przydatne, jeśli projekt jest na tyle duży, że masz problem z utrzymaniem wszystkiego prosto w głowie. Przeniesienie czegoś na papier / diagramy może również pomóc w projektowaniu i rozwiązywaniu problemów, przynajmniej dla mnie.
... Przyznaję również, że w przypadku projektów osobistych moje diagramy nie są tak formalne, jak w przypadku projektów w pracy, są po prostu dobre dla mnie do pracy z nimi ...
Jest to bardzo przydatne i cenne .
Jak powiedzieli inni, najlepiej komunikować się i na pierwszy rzut oka można powiedzieć „tylko 1 programista, więc ... nie potrzeba komunikacji”, ale nie sądzę, że to prawda.
Więc dla kogo jest UML i komunikacja?
Ponadto są one również przydatne w praktyce, gdy znajdziesz się w sytuacji, w której są obowiązkowe.
Krótko mówiąc, prawdopodobnie niewiele.
Największą wartością UML jest komunikacja, więc ma niewiele do zaoferowania zespołowi jednoosobowemu. Chociaż nadal używałbym go do szkicowania wstępnych projektów itp. Wizualizacja może znacznie pomóc w uchwyceniu skomplikowanych problemów.
Jednym z możliwych ważnych zastosowań jest jednak udokumentowanie projektu następcy (ów) - nie będziesz jedynym, który kiedykolwiek będzie pracował nad tym projektem (jakimkolwiek projektem).
Odpowiedź zależy oczywiście od wielkości i złożoności projektu, od tego, jak daleko zamierzasz przeprowadzić modelowanie oraz od tego, czy musisz dostarczyć formalny dokument projektowy.
Próbowałem używać go do małych osobistych projektów, ale okazało się, że nie jest zbyt przydatny. Dziwny schemat klasy lub sekwencji może pomóc uporządkować twoje myśli, ale po pewnym czasie może być więcej pracy niż jest to warte.
Może to być przydatne, ponieważ gdy próbujesz udokumentować swoje decyzje dotyczące projektu i architektury w języku UML, możesz głębiej zastanowić się nad aplikacją, a czasem odkrywać nowe rzeczy i tworzyć lepsze pomysły. Ale zgadzam się z innymi, że jeśli jest to mały projekt, możesz nie skorzystać z niego wiele, gdy pracujesz sam.
Marginal, pomyślałbym ... UML ma na celu komunikację pomysłów na projekt. Jeśli faktycznie myślisz w UML i potrafisz go stworzyć tak szybko, jak inne sposoby mapowania tego projektu, koniecznie skorzystaj z niego. W przeciwnym razie prawdopodobnie lepiej opracujesz coś, co wygląda jak zgrubne szkice i być może trochę UML „Lite”, jeśli twój projekt tego potrzebuje.
Wypróbuj kilka przypadków użycia, jeśli uważasz, że dany obszar ich potrzebuje. itp.
Niezależnie od tego, którą drogą wybierzesz, będziesz potrzebować czegoś, do czego można się odwołać za 12 miesięcy, kiedy nadejdzie czas, aby pomyśleć o wersji 2.
W niektórych projektach zastosowałem bardzo minimalną implementację (rysunki, połączone pudełka i niektóre etykiety). Pomyślałem, że łatwiej jest przedstawić konkretny proces niż próbować opisać go w formie pisemnej. Pewien purysta prawdopodobnie powie, że tak naprawdę nie jest to UML, ale klientów to nie obchodzi, więc ja też nie.
Posiadanie graficznej reprezentacji architektury może pomóc, jeśli architektura jest zbyt duża, aby po prostu o tym pamiętać (co musisz sam ustalić).
Nie potrzebujesz czegoś tak formalnego jak UML, jeśli robisz to tylko dla siebie.
Celem jest wizualizacja architektury, aby można ją było obsłużyć. Używaj wszystkiego, co działa, zachowując przy tym jak najmniej przeszkód.
Dobrą praktyką jest utrzymywanie dobrej dokumentacji projektu, ale dla jednej osoby może to nie być bardzo łatwe i czasochłonne, moja pozycja tutaj jest taka, że z pewnością musisz zrobić trochę UML i jeśli twój program jest bardzo skomplikowany lub wydasz swój kod, musisz to zrobić. jeśli twój projekt jest złożony i duży, możesz pomyśleć o zrobieniu dokumentacji wystarczająco dobrej, więc jeśli upłynie trochę czasu, możesz ją łatwo odzyskać.