INFO
Sylabus
Standard ODMG, część 8
1. Co to jest i po co jest metamodel?
2. Przykład opisu metamodelu
3. Co przedstawia metamodel?
4. Przykład metamodelu
5. Wymagania w stosunku do metamodelu
6. Co to jest "generyczność"?
7. Metody programowania generycznego
8. Kroki refleksji
9. Metamodel rezultatów zapytań
10. Metadane w ODMG 3.0
11. Zakresy
12. Metaobiekty
13. Interfejs DefiningScope
14. Moduły
15. Operacje, wyjątki, stałe
16. Własności
17. Interfejsy
18. Klasy i kolekcje
19. Typy konstruowane
20. Specyfikatory i operandy
21. Podsumowanie i ocena specyfikacji
22. Jak poprawić koncepcję metamodelu?
23. Spłaszczenie meta-modelu
24. Spłaszczony metamodel - przykład (1)
25. Rozwinięcie spłaszczonego metamodelu
26. Spłaszczony metamodel - przykład (2)
27. Podsumowanie
Skorowidz
Wyście:
Wyklad XIV. Wprowadzenie do standardu ODMG, część 8:
Metamodel i repozytorium metadanych (KURS SSR)
I II III IV V VI VII VIII IX X XI XII XIII XIV
« poprzedni punkt   następny punkt »

21. Podsumowanie i ocena specyfikacji

(1kB) Interfejsów: 31; Związków: 44 (2 x 22); Związków dziedziczenia: 29; Metod: 64
(1kB) Struktura ta jest sama w sobie dużą bazą danych. Zrozumienie tej struktury oraz manipulacja tą strukturą będzie problemem dla programistów. Pielęgnacja tej struktury (reakcja na zmiany w specyfikacji standardu) stanie się koszmarem. Np. kiedyś pojawią się perspektywy, tryggery, procedury BD, metody BD. Co z nimi?
(1kB) Struktura ta bardzo utrudnia wydobywanie niektórych informacji. Przykładowo, mamy nazwę "klient"; jak ustalić, czy jest to nazwa interfejsu, klasy, atrybutu,...?
(1kB) Scenariusz postępowania przy refleksji może być następujący: mamy pewną daną, ustalić jej metadane. Struktura metadanych musi być więc powiązana z zapamiętanymi danymi. Standard tego nie precyzuje.
(1kB) Struktura musi być powiązana z informacją o fizycznej organizacji danych oraz informacją służącą do optymalizacji. Standard tego nie precyzuje.
(1kB) Struktura nie zajmuje się metamodelem rezultatów zwracanych przez zapytania.

Generalna konkluzja: koncepcja niekompletna i technicznie wadliwa.



22. Jak poprawić koncepcję metamodelu?

(1kB) Uprościć model obiektowy, poprzez zredukowanie liczby pojęć, usunięcie pojęć redundantnych lub mało użytecznych (np, zbiorów - wystarczą wielozbiory) i zastosowanie zasady relatywizmu (np. każdy obiekt składa się z podobiektów, nie ma atrybutów).
(1kB) Uporządkować stosunek pomiędzy pojęciami interfejsu, typu i klasy.
(1kB) Zdefiniować standardowy, generyczny zestaw operacji do manipulacji i wyszukiwania. Powinien on dawać możliwość definiowania metod, ale nie powinien zmuszać wyłącznie do używania wąsko specjalizowanych, predefiniowanych metod. Powinien opierać się na języku zapytań a la OQL
(1kB) "Spłaszczyć" strukturę repozytorium metaobiektów tak, aby wszelkie związki pomiędzy elementami repozytorium były wyrażane w terminach wartości np. stringowych. Przykładowo, zamiast interfejsu Parameter zdefiniować obiekt Metaobject zawierający string "Parameter".
(1kB) Powyższe spłaszczenie ma kapitalne znaczenie dla pielęgnacyjności repozytorium, prostoty wyszukiwania, oraz dostawiania dowolnych pojęć typu informacja o organizacji fizycznej czy informacji optymalizacyjnej.


« poprzedni punkt   następny punkt »