Ocena diagramu / modelu

Ocena jakości modelu

  • Ujęcie istotnych dla klienta elementów (dane, dokumenty, funkcje, zachowania)
  • Poprawa efektywności i jakości pracy użytkowników
  • Komunikatywność modelu i przyszłego produktu
  • Podatność modelu na zmiany
  • Konwencje nazewnicze (nazwy klas, operacji etc.)
  • Zdolność do integracji z innymi modelami i produktami; relacje między modelami
  • Relacje między elementami przedstawione na różnym poziomie abstrakcji
  • Przedstawienie modeli na poziomie konceptualnym (logicznym, implementacyjnym i wystąpieniowym
  • Udokumentowane konsultacje, przeglądy, weryfikacje, wprowadzone zmiany, walidacja.
Ocena wartości modemu lub diagramu jest oceną wielokryterialną. Oceniając model należy kreślić czy jest on:

  • Poprawny
  • Kompletny
  • Minimalny
  • Czytelny
  • Samo-tłumaczący się
  • Podatny na modyfikacje

Model / diagram jest poprawny, jeśli wszystkie wsytepujące w nim elementy zostały poprawnie użyte we łasicy sposób. Wyróżnia się dwa rodzaje poprawności
Poprawność syntaktyczna - model diagram jest poprawny syntaktycznie, jeżeli wszystkie użyte w nim pojęcia zostały przedstawione w spsoć zgony z regułami składniowymi języka przy pomocy, którego wykonano jego opis.
Poprawność semantyczną model/diagram jest poprawny symentycznie, jeżeli odpowiada sytuacji rzeczywistej poddanej analizie.

Najważniejsze zagadnienia związane z poprawnym identyfikowaniem klas

Klasy nadmiarowe - jeżeli dwie klasy wyrażają te sama informacje to wówczas powinna wybrana być ta, która jest bardziej informatywn. Naprzyklad, jeżeli dla dziedziny problemowej lini lotniczej zdefiniowano klasę pasażer i klient to należy wybrać klasę pasażer, ponieważ jej nazwa lepiej opisuje byt dziedzinowy.

Klasy, nierewantle - jeżeli klasa ma niewielki związek z rozważanym problemem to należy ja pominąć szczególnie w modelu o wysokim poziomie abstrakcji. Naprzyklad dla dziedziny problemowej szkoła, klasa Tablica może, ale nie musi być klasa nierelewantną.

Klasy niejednoznaczne - nazwy klas powinny być dobrane w taki sposób, aby jednoznacznie określały ich przeznaczenie. Naprzyklad nazwa podmiot obsługi nie jest nazwa wlasciowa gdyż w zależności od dziedziny problemowej i kontekstu może być definiowana, jako klient, bank, pasażer itp.

Atrybuty, - jeżeli atrybut może istnieć niezależnie od obiektu to należy rozważać utworzenie w jego miejsce nowej klasy. Na przykład warto się zastanowić czy nie było by lepiej gdyby informacja o dzieciach pracownika została przedtswiona jako klasa połączona asocja z klasa pracownik a nie jako atrybut np. dzieci pracownika bedacy własnością tej klasy.

Operacje - w niektórych sytuacjach może okazac się ze operacja należy przedstwic w ocenie klasy na przykad termin rozmowa telefoniczna może oznaczac operacje ale może również oznaczacklase z atrybutami takimi jak dlugi, taryfa czas.

Klasa zamiast roli asocjacji - nazwa klasy powinna wyrażać jej ogólny charakter nie role, jaka pełni w danym związku z Inn klasa. Termin określający jako wlasiciel samochodu nie jest wlasciowa nazwa kalsy ponieqwaz jes to rola jaka osoba pelni w stosunku do samochodu co wiecej gdyby dla osoby nie zależało przhcowywac inne dane to np. dane o jej dzieciach to nazwa kalsy kazala by się wlasciwa i niezrozumiała.

Klasy odnoszące się do implementacji - model pojęciowy nie powinien zawierac elementów projektowych co oznacza ze nie należy definiowac w modelu pojęciowym klas nie odnoszących się do dziedziny problemowej.

Klasa zamiast atrybutu - jeżeli pewna własności posiada nie zmienione znaczenie to powinna być modelowana jako klasa - może wówczas brac udzial w związkach z innymi klasami. Dla przykładu adres lepiej modelowac w postaci klasy niż atrybutu z kolei nazwisko jest raczej atrybutem.

Identyfikatory - model obiektowy z definicji zapewnia tożsamość obiektów, dlatego nie istnieje istota wprowadzania atrybutowo pełniących role wewnetrzych identyfikatowrow.

Atrybuty wewnętrzne - jeżeli atrybut ma charakter wenwterzy to z definicji może wykrozystwyac tylko niektóre operacje to raczej należy go usunąć z modelu pojęciowego. Prtzykadem mogą być wewnterze atrybuty dla metody oblicz podatek kt?óej przechowywanie podatek w poprzednich latach.

Atrybuty rozszczepiające - jeżeli zdaniem atrybutu jest podzielenie ekstensji danej klasy na podzbiory to o Wiznej semantyce to należy zamiast niego zdefinowac odpowiednie podklasy.

Atrybuty nieistotne - należy unikac przedstawiania wszelkich niistotnych informacji w modelu pojęciowym.

Arubuty odnoszące się do inplenetacji - nie powinny rozniwez być mieszane w modelu pojęciowym.

Atrybut asocjacji

Asocjacje n-arne - stosowanie asocjacji o arnosciach wiekszych niż 2 jest często najlepszym sposobem na wyrazenie na etapie analizy związków zachodzących w obrebie pewnej grupy obiektów. Takie asocjacje SA jednak w fazie projektowania dekomponowane na asocjacjach binarne.

Asocjacje pochodne - Dodawanie nazw ról dla unikniecia niejednoznaczności diagramu - w pewnych sytuacjach opisanie asocjacji pozwala w niejednoznaczny sposób zdefiniowac charakter związku

KOMPELNTOŚć

Model diagram jest kompletny, jeżeli przedstawia wszystkie rewanże cechy rozważanej dziedziny problemowej.

  • Asymetria w asocjach i generalizacjach
  • Istnienie rozłaczych grup atrybutów i operacji wewnątrz klasy
  • Jeżeli pewna klasa pełni Kika zasadniczo ważnych ról.
  • Ścieżka dostepnu do obiektów
  • Brak operacji wykorzystujących dana asocjacje
  • Redundantna informacja w asocjacji

Minimalność

Model diagram jest minimalnyjezlei każdy z aspektów dziedziny problemowej jest przedstawiony na schemacie dokładnie jeden raz

Czytelność

Samo tłumaczenie

Model/diagram jest samotlumaczacy się jeżeli jego analizowana dziedzina jest proelmowa jest przedstawiona w sposób naturalny zrozumialy i na tyle wczyerpujacy ze nie SA wymagane dodatkowe objascnienia.