Wprowadzenie
Analiza odporności, początkowo wprowadzona przez metodę Objectory Ivara Jacobsona, ale później wykluczona z języka modelowania jednolitego (UML), jest wartościową praktyką w inżynierii oprogramowania. Ta metoda polega na rozkładaniu tekstu narracyjnego przypadków użycia w celu identyfikacji podstawowego zestawu obiektów uczestniczących w tych przypadkach użycia i kategoryzacji tych obiektów na podstawie ich ról. Dzięki temu analiza odporności ułatwia bezproblemowe połączenie przypadków użycia z klasami domeny, efektywnie zgodnie z architekturą oprogramowania Model-View-Control (MVC).
Warto zaznaczyć, że analiza odporności nie jest integralną częścią UML, ale wymaga stosowania stereotypów, aby mogła być skutecznie zastosowana. Przyjrzyjmy się kluczowym symbolom używanym w diagramach analizy odporności:

1. Obiekt graniczny (lub obiekt interfejsu): Są to kanały komunikacji, przez które aktorzy współdziałają z systemem.
2. Obiekt encji: Zazwyczaj reprezentują obiekty w modelu domeny, te encje przechowują i zarządzają danymi systemu.
3. Obiekty sterujące: Służą jako „klej” łączący obiekty graniczne z obiektami encji, obiekty sterujące odgrywają kluczową rolę w koordynowaniu funkcji systemu. W kontekście MVC są podobne do kontrolerów.
Przegląd diagramu analizy odporności
Aby lepiej wyjaśnić ten koncept, rozważmy prosty opis przypadku użycia w formie tekstowej:
„Z strony szczegółów ucznia nauczyciel kliknie przycisk „Dodaj kursy”, a system wyświetli listę kursów. Nauczyciel wybiera nazwę kursu i naciska przycisk „Zarejestruj”. System rejestruje ucznia na kursie.”
Ten opis można przekształcić w jasny diagram analizy odporności:

Dodatkowo możesz użyć etykiety tekstowej, aby przypiąć opis przypadku użycia po stronie prawej diagramu analizy odporności, co zwiększa przejrzystość i kontekst.

Cztery zasady połączeń dla diagramów analizy odporności
Aby zapewnić spójność i zgodność z najlepszymi praktykami, ważne jest zapamiętanie następujących czterech podstawowych zasad połączeń dla diagramów analizy odporności:
- Aktorzy mogą współdziałać wyłącznie z obiektami granicznymi.
- Obiekty graniczne mogą komunikować się wyłącznie z kontrolerami i aktorami.
- Obiekty encji mogą współdziałać wyłącznie z kontrolerami.
- Kontrolery mogą komunikować się z obiektami granicznymi, obiektami encji i innymi kontrolerami, ale nie bezpośrednio z aktorami.

Te zasady zapewniają zorganizowane i efektywne projektowanie systemu, zgodne z zasadami wzorca Model-View-Control.
Prawo Demetera
Analiza odporności jest zgodna z „Prawem Demetera” (LoD), podkreślając rozłączność i minimalizację przekazywania wiedzy między jednostkami oprogramowania. Prawo Demetera promuje następujące zasady:
- Każda jednostka powinna mieć ograniczoną wiedzę o innych jednostkach, przede wszystkim tych blisko z nimi powiązanych.
- Jednostki powinny komunikować się wyłącznie z ich najbliższymi „przyjaciółmi” (bezpośrednimi współpracownikami) i unikać interakcji z niepowiązanymi lub odległymi jednostkami.
- Obiekty powinny zakładać jak najmniej o strukturze lub właściwościach innych obiektów, promując ukrywanie informacji.
Te zasady wspomagają projektowanie oprogramowania modułowego i utrzymywalnego.
Pięć kroków tworzenia analizy odporności
- Analiza tekst przypadku użycia:Zacznij od rozkładania tekstu przypadku użycia zdanie po zdaniu.
- Identyfikuj obiekty:Narysuj aktorów, obiekty graniczne, obiekty encyjne i kontrolery zgodnie z kontekstem tekstu.
- Twórz połączenia:Ustanów połączenia między elementami diagramu.
- Zachowaj przejrzystość:Upewnij się, że każdy przeglądający diagram może łatwo dopasować go do tekstu przypadku użycia.
- Udoskonal tekst przypadku użycia:Zmodyfikuj tekst przypadku użycia, jeśli to konieczne, aby usunąć niejasności i jasno odwołać się do obiektów granicznych i obiektów encyjnych.
Analiza odporności działa jak most, łączący opisy przypadków użycia z diagramami wizualnymi i wspierając głębsze zrozumienie funkcjonalności systemu.
Tworzenie scenariuszy przypadków użycia za pomocą diagramów sekwencji MVC
Opierając się na podstawie analizy odporności, możesz tworzyć scenariusze przypadków użycia, zarówno normalne, jak i alternatywne, wykorzystując zestaw powiązanych diagramów sekwencji zgodnych z formatem MVC. W diagramach sekwencji MVC:
- Obiekty encyjnereprezentują dane systemu.
- Obiekty granicznesłużą jako interfejsy z aktorami systemu.
- Kontrolerysłużą do pośrednictwa interakcji między obiektami granicznymi i encyjnymi, koordynując wykonanie poleceń.
Kontrolery w diagramach sekwencji MVC często odpowiadają konkretnym scenariuszom przypadków użycia i mogą być wizualnie odróżnione za pomocą stereotypów na linii życia.

Wnioski
Analiza odporności jest wartościowym narzędziem w projektowaniu systemu, pomagając w efektywnym przekształcaniu przypadków użycia w jasną i zorganizowaną architekturę oprogramowania. Połączenie jej z diagramami sekwencji MVC zapewnia kompleksowy podejście do rozwoju oprogramowania, promując modułowość i utrzymywalność. Śledząc te praktyki, możesz zapewnić płynniejszy proces rozwoju oprogramowania i poprawić ogólną jakość swoich projektów.











