Temat: Zrozumiałość diagramów
Jakub Wojt:
Czy diagramy UML (ogólniej - dokumentacja) muszą być zrozumiałe ?
Nie i czasami nie są zrozumiałe zwłaszcza dla Klientów (aczkolwiek miałem przypadki, że programistów trzeba było szkolic z UML). Wtedy stosuje się inne notacje.
Jeśli tak - czym jest owa "zrozumiałość" i jak ją mierzyć ?
Czy istnieją "współczynniki zrozumiałości" na podstawie których można stwierdzić, że dany zestaw diagramów jest "zrozumiały" ?
Rozumiem, że pytanie dotyczy architektury oprogramowania.
Cofnijmy się zatem 36 lat wstecz.
Idea Freda Brooks’a z 1975 r.: „im więcej osób dołącza do pracy w późnej fazie projektu, tym później ukazuje się on na rynku”. Zasada ta charakteryzowała czasy, gdy architektura oprogramowania była jeszcze w „powijakach” i zmiany w zespołach projektowych, bez stosownych modeli oprogramowania, nieraz miewały katastrofalny skutek dla projektu. Nawet dzisiaj błędny projekt architektury może spowodować wycofanie się sponsorów z projektu, co potwierdza jedno z ciekawych stwierdzeń, które SEI podniosło do rangi definicji, którym jest cytat Eoina Woodsa:
„Architektura oprogramowania jest listą decyzji projektowych, które w przypadku nieodpowiedniego wykonania, mogą spowodować anulowanie całego projektu ”. Nieudane projekty zazwyczaj można opisać słowami Jima Archera „Wpierw płacisz za rezultaty, następnie za wysiłek i ostatecznie za obecność ”.
Unikanie nieudanych projektów radzi Barry Boehm w 1995 roku „Dopóki w przedsięwzięciu nie powstała architektura systemu wraz z uzasadnieniem, nie powinno się rozpoczynać tworzenia systemu na pełną skalę. Wyspecyfikowanie architektury oprogramowania w postaci, która pozwala na jej przekazywanie, umożliwia jej stosowanie w procesie tworzenia i pielęgnacji.”.
Natomiast Philippe Kruchten twierdzi w 1998 roku, że architektura oprogramowania wcale nie jest tak skomplikowana, gdyż „Architektura jest tym, co pozostaje, gdy nie można już usunąć niczego więcej, a system ciągle jest zrozumiały i można objaśnić jego działanie.”.
Z drugiej strony Philippe Kruchten zauważył w 2001 roku, że „Gdy proces zanika, zostaje dobra praktyka, Gdy dobra praktyka zanika, istnieją jeszcze reguły, Kiedy reguł brak, pozostaje rytuał, Rytuał zaś jest początkiem chaosu”.