Dlaczego branża oprogramowania łączy miłość i nienawiść z diagramami UML
Opublikowany: 2017-05-19UML to wszechstronny język wizualny, który służy do modelowania systemu oprogramowania. Branża oprogramowania była podzielona w swoim zdaniu co do wykorzystania diagramów UML. Podczas gdy niektórzy postrzegają go jako integralną część systemów oprogramowania i rozwoju oprogramowania, znaczna liczba osób uważa to za całkowicie niepotrzebne.
W tym poście badamy obie strony tego sporu (zarówno zalety, jak i wady UML) i próbujemy zrozumieć związek miłości i nienawiści w branży oprogramowania z diagramami projektowymi UML.
Zalety UML
Najczęściej używane i elastyczne
UML to uznana i rozumiana platforma do projektowania oprogramowania. Jest to standardowa notacja wśród twórców oprogramowania. Można śmiało założyć, że większość specjalistów od oprogramowania będzie przynajmniej zaznajomiona, jeśli nie dobrze zorientowana w diagramach UML, co czyni je alternatywą do wyjaśniania modeli projektowania oprogramowania.
To, co sprawia, że UML dobrze nadaje się i jest bardzo potrzebny do tworzenia oprogramowania, to jego elastyczność. Elementy modelowania i interakcje na diagramie UML można dostosować specjalnie do używanej domeny lub technologii.
Architektura oprogramowania musi być skutecznie komunikowana
Architektura oprogramowania to projekt systemu. Jest to ramy, od których zależy wydajność systemu i jego procesów. Ale ten framework jest skuteczny tylko wtedy, gdy jest właściwie zakomunikowany wszystkim, którzy go używają i pracują nad nim. W tym miejscu pojawia się Unified Modeling Language (UML).
UML to bogaty i rozbudowany język, którego można używać nie tylko do modelowania zorientowanej obiektowo inżynierii oprogramowania, ale także struktury i zachowania aplikacji oraz procesów biznesowych. Gracze programistyczni zgodzili się, że nie możemy pozbyć się dokumentacji architektury. To jest ważne. Pomaga w ocenie wydajności, bezpieczeństwa, śledzenia i dostarcza ważnych wskazówek dotyczących przydziału w trakcie operacji.
Ze względu na szeroki zasięg UML jest idealnym językiem wizualnym do przekazywania szczegółowych informacji o architekturze jak największej liczbie użytkowników.
Aby go używać, musisz znać tylko ułamek języka
Chociaż istnieje 14 różnych typów diagramów UML do modelowania aplikacji, programiści używają tylko trzech lub czterech do udokumentowania systemu oprogramowania. Najbardziej modne są diagramy klas, diagramy sekwencji i diagramy przypadków użycia.
Oznacza to, że musisz znać tylko 20% języka UML, aby wyjaśnić 80% swoich potrzeb związanych z modelowaniem. Nie musisz znać ani rozumieć całej notacji, aby skutecznie komunikować się za pomocą diagramów UML. Znajomość podzbioru notacji zapewnia ci dobre wyposażenie.
Bogactwo narzędzi UML
Narzędzia UML to jeden z najważniejszych powodów, dla których UML jest tak szeroko stosowany. Narzędzia UML obejmują zarówno darmowe oprogramowanie typu open source, jak i te, które kosztują miliony dolarów. Te narzędzia obejmują znacznie więcej obszarów niż tylko rysowanie diagramów. Mogą generować kod z projektu, stosować wzorce projektowe, wymagania kopalni, kod inżynierii odwrotnej oraz przeprowadzać analizę wpływu i złożoności.
Te zalety i bogactwo samych narzędzi UML sprawiają, że UML jest podstawowym językiem do modelowania i programowania w dziedzinie inżynierii oprogramowania.
Pomimo niezliczonych zastosowań i korzyści, UML nie jest preferowany przez wszystkich. W rzeczywistości, znaczna część programistów nie używa UML i poddaje temu samemu ostrą krytykę. Przyjrzyjmy się argumentom przeciwko używaniu UML.
Wady UML: argumentowanie przeciwko UML
Notacja formalna nie jest konieczna
Najmocniejszym argumentem przeciwko UML jest to, że tak naprawdę nie potrzebujesz diagramu UML do komunikowania swoich projektów. Możesz mieć taki sam wpływ i efekt, korzystając z nieformalnych diagramów ramkowych i liniowych utworzonych w programie PowerPoint, Visio lub tablicy. Ponieważ kodowanie jest samo w sobie językiem formalnym, wielu programistów nie preferuje złożoności i formalności na poziomie architektury, co zniechęca do korzystania z UML i stało się jedną z jego wad.
Rosnący stopień złożoności
Od momentu powstania aż do teraz, UML rozrósł się pod względem złożoności i rozmiarów. Sam rozmiar UML sprawia, że wiele osób na samym początku denerwuje się i czują, że nie będą w stanie się go nauczyć i lepiej sobie bez niego.
Niekonieczne w „projektach obojętnych na architekturę”
Termin ukuty przez George'a Fairbanksa, „projekt obojętny na architekturę” to sytuacja, w której UML jest uważany za zbędny.
W swej istocie projekt bez względu na architekturę odnosi się do architektury oprogramowania, która jest prosta i podstawowa i nie wymaga żadnych złożonych diagramów do reprezentowania lub wyjaśniania projektu. Jeśli firmy kładą większy nacisk na formalne kodowanie i panuje kultura minimalnej dokumentacji projektowej, UML jest uważany za zbędny.
Rozszyfrowanie tego związku miłości i nienawiści:
Chociaż wiele mówi się o redundancji UML w branży oprogramowania, nie można zaprzeczyć, że dotychczas nie istnieje holistyczny lub odpowiedni substytut UML. Aby uzyskać obiektywne spojrzenie na znaczenie i los UML, porozmawialiśmy z gigantami sprzętowymi, którzy mają bliski kontakt z branżą oprogramowania, ale z ich punktu widzenia są neutralni.
„Brak dokumentacji projektowej jest w porządku na krótką metę, ale może stać się problemem na dłuższą metę, gdy trzeba przekazać projekt deweloperowi przebywającemu w innym kraju lub komuś, kto dołączy do zespołu sześć miesięcy później . UML staje się w takich okolicznościach ogromną pomocą i łagodzi niejasności i pytania dotyczące projektu.” Opiniuje przedstawicielka Sconect, Female Header Manufacturer.
„Możemy mówić o językach specyficznych dla domeny do modelowania wizualnego, ale faktem jest, że żaden z nich nie znalazł szerokiej akceptacji, co tylko potwierdza, że UML pozostaje najlepszą alternatywą, jeśli chodzi o języki wizualne”. To spostrzeżenie bardzo ciekawie przedstawił przedstawiciel firmy Scondar, która specjalizuje się w produkcji złączy kołkowych.
Informacje przekazane przez przedstawiciela firmy Ismolex trafnie podsumowują przypadek związku miłości i nienawiści w branży oprogramowania z diagramami projektowymi UML. „Może istnieć tysiąc argumentów przeciwko wykorzystaniu UML, ale ze względu na jego zdolność do uchwycenia niuansów informacji o architekturze projektu oraz wraz ze wzrostem znaczenia dokumentacji projektowej, UML pozostaje niezastąpiony”.
Zalety i wady UML: po której stronie jesteś?
Odmowy i przestrzeganie diagramów UML będą kontynuowane w kręgach oprogramowania. Ale UML jest tutaj, aby pozostać. Diagramy UML muszą być jednak stale aktualizowane, aby ich użycie nie ograniczało się tylko do opisu architektury i komunikacji, ale było rozszerzone o reprezentowanie i tworzenie systemów, które mogą uwzględniać dynamiczne zmiany.
o autorze
Nazywam się Rachel Oliver, od kilku lat pracuję jako niezależny pisarz, a obecnie jestem związana z Ismolex – producentem nagłówków pinów. Chociaż lubię pisać o wszystkich rzeczach pod słońcem, w tym o energii, biznesie, sporcie, majsterkowaniu i modzie, szczególnie pasjonuję się biznesem, technologią i elektroniką. Możesz się ze mną skontaktować przez Google+, Facebook i Twitter.