De ce industria software-ului are o relație dragoste-ura cu diagramele UML
Publicat: 2017-05-19UML este un limbaj vizual versatil care este folosit pentru a modela un sistem software. Industria software-ului a fost împărțită în opinia sa cu privire la utilizarea diagramelor UML. În timp ce unii îl văd ca o parte integrantă a sistemelor software și a dezvoltării, există un număr semnificativ de oameni care consideră că este complet inutil.
În această postare, explorăm ambele părți ale acestui argument (atât avantajele, cât și dezavantajele UML) și încercăm să înțelegem relația dragoste-ura a industriei software cu diagramele de design UML.
Avantajele UML
Cel mai folosit și flexibil
UML este o platformă foarte recunoscută și înțeleasă pentru proiectarea software. Este o notație standard în rândul dezvoltatorilor de software. Puteți presupune cu siguranță că majoritatea profesioniștilor în software vor fi cel puțin familiarizați cu diagramele UML, dacă nu sunt bine versați, făcându-l astfel alternativa de bază pentru a explica modelele de proiectare software.
Ceea ce face ca UML să fie potrivit și foarte necesar pentru dezvoltarea de software este flexibilitatea sa. Puteți personaliza elementele și interacțiunile de modelare într-o diagramă UML în mod specific pentru a se potrivi domeniului sau tehnologiilor pe care le utilizați.
Arhitectura software trebuie să fie comunicată eficient
Arhitectura software este modelul sistemului. Este cadrul de care depinde eficiența sistemului și a proceselor sale. Dar, acest cadru este eficient doar dacă este comunicat corespunzător tuturor celor care îl folosesc și lucrează la el. Aici intervine Unified Modeling Language (UML).
UML este un limbaj bogat și extins care poate fi folosit pentru a modela nu doar inginerie software orientată pe obiecte, ci și structura și comportamentul aplicațiilor, precum și procesele de afaceri. Jucătorii de software au fost de acord că nu putem elimina documentarea arhitecturii. Este important. Ajută la evaluarea performanței, a securității, a urmăririi și oferă linii directoare importante pentru misiunea aflată în funcțiune.
Datorită extinderii sale, UML este limbajul vizual perfect pentru a comunica informații detaliate despre arhitectură către cel mai mare număr de utilizatori.
Trebuie să cunoașteți doar o parte din limbaj pentru ao folosi
Deși există 14 tipuri diferite de diagrame UML pentru aplicații de modelare, dezvoltatorii folosesc doar trei sau patru pentru a documenta un sistem software. Diagramele de clasă, diagramele de secvență și diagramele de cazuri de utilizare rămân cele mai în vogă.
Acest lucru implică faptul că trebuie să cunoașteți doar 20% din limbajul UML pentru a explica 80% din nevoile dvs. de modelare. Nu trebuie să cunoașteți sau să înțelegeți întreaga notație, pentru a comunica eficient folosind diagrame UML. Cunoașterea unui subset al notației te echipează foarte bine.
Abundență de instrumente UML
Instrumentele UML sunt unul dintre cele mai importante motive pentru care UML este utilizat atât de larg. Instrumentele UML variază de la software cu sursă deschisă gratuit la cele care costă milioane de dolari. Aceste instrumente acoperă mult teritoriu dincolo de doar desenarea diagramelor. Aceștia pot genera cod din proiectare, pot aplica modele de proiectare, cerințe de mine, cod de inginerie inversă și pot efectua analize de impact și complexitate.
Aceste avantaje și abundența instrumentelor UML în sine fac din UML limbajul de modelare și dezvoltare de bază în domeniul ingineriei software.
În ciuda numeroaselor sale utilizări și beneficii, UML nu este preferat de toți. De fapt, o secțiune considerabilă de dezvoltatori de software nu utilizează UML și aduc critici grele asupra aceluiași. Să ne uităm la argumentele împotriva utilizării UML.
Dezavantajele UML: Raționament împotriva UML
Notarea formală nu este necesară
Cel mai puternic argument împotriva UML este că nu aveți nevoie de o diagramă UML pentru a vă comunica design-urile. Puteți avea același impact și efect cu diagramele informale, cu case și linii create în PowerPoint, Visio sau o tablă albă. Deoarece codarea este un limbaj formal în sine, mulți dezvoltatori nu preferă complexitatea și formalitatea la nivel arhitectural, ceea ce descurajează utilizarea UML și a devenit unul dintre dezavantajele acestuia.
Gradul crescător de complexitate
De la inițierea sa și până în prezent, UML a crescut în complexitate și dimensiune. Dimensiunea uriașă a UML îi face pe mulți oameni nervoși chiar de la început și simt că nu vor putea să-l învețe și sunt mai bine fără el.
Nu este necesar în „Arhitectură-Design indiferent”
Un termen inventat de George Fairbanks, „design indiferent de arhitectură” este o situație în care UML este considerat inutil.
În esență, un design indiferent de arhitectură se referă la o arhitectură software care este simplă și de bază și nu are nevoie de diagrame complexe pentru a reprezenta sau explica designul. Dacă firmele pun mai mult accent pe codificarea formală și există o cultură predominantă a documentației de design minimale, UML este considerat inutil.
Descifrarea acestei relații dragoste-ura:
Deși se vorbește mult despre redundanța UML în industria software, nu se poate nega că până acum nu există un substitut holistic sau adecvat pentru UML. Pentru a primi o perspectivă imparțială asupra semnificației și destinului UML, am vorbit cu giganți hardware care sunt strâns în legătură cu industria software, dar neutri din perspectiva lor.
„Lipsa documentației de proiectare este în regulă pe termen scurt, dar poate deveni o problemă pe termen lung atunci când trebuie să comunicați proiectul unui dezvoltator care se află într-o altă țară sau cuiva care se va alătura echipei șase luni mai târziu. . UML devine un ajutor enorm în astfel de circumstanțe și atenuează ambiguitatea și întrebările legate de design.” O reprezentantă la Sconect, producător de antet feminin, opinează.
„Putem vorbi despre limbaje specifice domeniului pentru modelarea vizuală, dar rămâne faptul că niciunul dintre ele nu a găsit o acceptare largă, ceea ce afirmă doar că UML rămâne cea mai bună alternativă în ceea ce privește limbajele vizuale.” Această observație a fost prezentată în mod foarte interesant de un reprezentant de la Scondar, care este specializată în fabricarea de conectori de tip pin header.
Intrările unui reprezentant de la Imolex rezumă în mod adecvat cazul relației dragoste-ura a industriei software cu diagramele de design UML. „Pot exista o mie de argumente împotriva utilizării UML, dar datorită capacității sale de a capta nuanțele informațiilor despre arhitectura de proiectare și odată cu creșterea importanței documentației de proiectare, UML rămâne de neînlocuit.”
Avantajele și dezavantajele UML: de ce parte sunteți?
Negațiile și aderările la diagramele UML vor continua în cercurile software. Dar, UML este aici pentru a rămâne. Diagramele UML, totuși, trebuie să fie actualizate în mod continuu, astfel încât utilizarea lor să nu se limiteze doar la descrierea arhitecturii și comunicarea, ci extinsă pentru a reprezenta și a crea sisteme care pot găzdui schimbări dinamice.
Despre autor
Sunt Rachel Oliver, am lucrat în ultimii doi ani ca scriitor independent și în prezent asociat cu Imolex – producător de antet Pin. Deși îmi place să scriu despre toate lucrurile sub soare, inclusiv despre energie, afaceri, sport, îmbunătățiri pentru locuințe și modă, sunt în special pasionat de afaceri, tehnologie și electronică. Puteți lua legătura cu mine pe Google+, Facebook și Twitter.