• Nie Znaleziono Wyników

Ontologia metod i technik wspierających dobór i ocenę składników COTS Przeprowadzona w Rozdziale 2 pracy dyskusja pozwoliła zidentyfikować zbiór rozwiązań

4. ONTOLOGIE WSPOMAGAJĄCE PROCES DOBORU I OCENY SKŁADNIKÓW OPROGRAMOWANIA COTS

4.3. Ontologia metod i technik wspierających dobór i ocenę składników COTS Przeprowadzona w Rozdziale 2 pracy dyskusja pozwoliła zidentyfikować zbiór rozwiązań

wspierających dobór i ocenę składników COTS. Ich szczegółowa analiza umożliwiła sformułowanie zbioru kryteriów oraz podkryteriów. W oparciu o dostępne charakterystyki analizowanych rozwiązań podjęto próbę budowy taksonomii poszczególnych metod i technik wspierających dobór i ocenę składników COTS. W rezultacie sformułowano zbiór 5 kryteriów oraz przypisanych do nich 51 podkryteriów charakteryzujących dane rozwiązania384,385.

Rys. 4.4. Prezentacja graficzna zbióru kryteriów głównych charakteryzujących metody i techniki wspomagające dobór i ocenę składników COTS. Źródło: Opracowanie własne.

Z uwagi na występujące znaczące różnice pomiędzy rozwiązaniami, koniecznym było zdefiniowanie szerszego zbioru kryteriów.

384 Konys A., Wątróbski J., Methods and techniques of selecting scalable components for structure requirements of enterprise management systems, Materiały naukowe INFOGRYF 2009: Rola informatyki w rozwoju regionalnym, ISBN: 978-83-751816-3-0, Międzyzdroje, 14-15maj 2009, ss.145-170.

385 Wątróbski J., Konys A., Uogólnienie doświadczeń metodycznych w zakresie oceny powielarnych składników oprogramowania, Materiały VI Kongresu PSZW "Zarządzanie wiedzą w warunkach kryzysu finansowego gospodarki", ISSN 1732-324X, 2009, ss. 145-159.

103 Rys. 4.5. Prezentacja graficzna szczegółowego zbióru kryteriów charakteryzujących metody i techniki wspomagające dobór i ocenę składników COTS. Źródło: Opracowanie własne.

104 Szczegółowe zestawienie analizowanych rozwiązań jak również przyporządkowanych im kryteriów zamieszczono w Tabeli 4.1. Bazując na przedstawionych charakterystykach poszczególnych metod i technik zostały sprecyzowane następujące klasy (classes) oraz podklasy (subclasses):

Ocena oprogramowania (Zastosowanie AHP, Zastosowanie agentów, Zastosowanie algorytmu heurystycznego, Zastosowanie MCDA, Zastosowanie metod eksperckich, Zastosowanie modeli jakości, Zastosowanie narzędzi wspomagających ocenę, Zastosowanie oceny sterowania ryzykiem, Zastosowanie opisu oprogramowania z bazy wiedzy lub repozytorium, Zastosowanie pierwowzorów, Zastosowanie socjotechnicznej oceny, Zastosowanie taksonomii, Zastosowanie technik inżynierii wymagań, Zastosowanie technik programowania celowego, Zastosowanie technik programowania liniowego, Zastosowanie technik scenariuszowych, Zastosowanie teorii gier, Zastosowanie teorii zbiorów rozmytych, Zastosowanie użyteczności dziedziny modelu, Zastosowanie WSM, Zastosowanie współczynników weryfikujących, Zdefiniowanie wymagań łączących przypadki użycia i screenshooty),

Rys. 4.6. Prezentacja graficzna klasy Ocena oprogramowania. Źródło: Opracowanie własne.

105

106 Określenie ważności kryteriów (Grupowe AHP, Hierarchiczny model decyzyjny, Klastry i mechanizmy DSS, Nadanie wag globalnych i lokalnych, Rozmyta teoria zbiorów, Rozmyte QFD, Szczegółowy opis oprogramowania, Wielokryterialna metoda wspomagania decyzji, Zastosowanie narzędzia),

Rys. 4.7. Prezentacja graficzna klasy Określenie ważności kryteriów. Źródło: Opracowanie własne.

Proces oceny COTS (Powtarzalność procesu, Wykorzystanie niefunkcjonalnych atrybutów, Wykorzystanie technicznych atrybutów, Zorientowanie celowe),

Rys. 4.8. Prezentacja graficzna klasy Proces oceny COTS. Źródło: Opracowanie własne.

Sposób określania kryteriów (Arkusz kalkulacyjny modelu, Burza mózgów, Identyfikacja wymagań, Mechanizmy DSS, NGT, Określane przez decydenta, Określenie szablonu kryteriów, Porównanie elementów CBS, Szczegółowa analiza wymagań, Ustalenie celów i specyfikacji, Wywiad lub kwestionariusz),

Rys. 4.9. Prezentacja graficzna klasy Sposób określania kryteriów. Źródło: Opracowanie własne.

Typ informacji preferencyjnej (Deterministyczny typ informacji preferencyjnej, Kardynalny typ informacji preferencyjnej, Niedeterministyczny typ informacji preferencyjnej, Porządkowy typ informacji preferencyjnej, Rozmyty typ informacji preferencyjnej). Jako klasa nadrzędna (superclass) została automatycznie przypisana klasa Thing.

107 Rys. 4.10. Prezentacja graficzna klasy Typ informacji preferencyjnej. Źródło: Opracowanie własne.

Zostały również określone następujące operatory logiczne: operator AND ⊓ oraz operator OR ⊔. W ontologii metod i technik wspomagających dobór i ocenę składników COTS poszczególne metody i techniki: APCS, CAP, CARE, CBCPS, CDSEM, CEP, CSID, COSTUME, COTS-Agent Based System, CRE, Cil, Colombo i Francalanci, DBCS, Erol i Ferrel, FCS, GOThIC, IusWare, Jung i Choi, Lai, MAS, MRETS, Merad i Lemos, MiHOS, Morera, OTSO, PECA, PORE, RCPEP, SCARLET, SMI, STACE, Scenario-based technique, SedighAli, StoryBoard, Teltumbde, Wang, Wei i Wang, WinWin Spiral Model posiadają bezimienną klasę (ang. Unnamed class) w postaci Nazwa metody, dla której wskazać można również bezimienną klasę Metoda oceny COTS. Tym samym wyszczególnione powyżej metody i techniki wspomagające dobór i ocenę składników COTS stanowią podklasę (ang. Subclass) dla klasy Nazwa metody oraz Metoda oceny COTS, czyli stanowią podklasy bezimiennych klas opisanych przez przecięcie się klas Nazwa metody oraz Metoda oceny COTS.

Rys. 4.11. Prezentacja graficzna zbioru metod i technik wspomagających dobór i ocenę składników COTS. Źródło: Opracowanie własne.

Analogiczna sytuacja występuje w przypadku klasy Kryterium oraz poszczególnych kryteriów oraz podkryteriów będących podklasami tejże klasy. Poszczególne podkryteria posiadają bezimienną klasę w postaci sprecyzowanego kryterium, stanowiącego ich kryterium nadrzędne, dla którego również wskazać można bezimienną klasę Kryterium. Przykładem mogą być tutaj podklasy: Grupowe AHP, Hierarchiczny Model Decyzyjny, Klastry i Mechanizmy DSS, Nadanie Wag Globalnych i Lokalnych, Rozmyta Teoria Zbiorów, Rozmyte QFD, Szczegółowy Opis Oprogramowania, Wielokryterialna Metoda Wspomagania Decyzji, Zastosowanie Narzedzia, posiadające bezimienną klasę Określenie Waznosci Kryteriow która posiada również bezimienną klasę Kryteria. W rezultacie podklasy Grupowe AHP, Hierarchiczny Mode lDecyzyjny, Klastry i Mechanizmy DSS, Nadanie Wag Globalnych

108 i Lokalnych, Rozmyta Teoria Zbiorow, Rozmyte QFD, Szczegółowy Opis Oprogramowania, Wielokryterialna Metoda Wspomagania Decyzji, Zastosowanie Narzedzia, posiadające bezimienną klasę Kryteria Klasyfikujace, stanowią podklasę (ang. Subclass) dla klasy Kryteria Klasyfikujace oraz Kryteria, czyli stanowią podklasy bezimiennych klas opisanych przez przecięcie się klas Kryteria Klasyfikujace oraz Kryteria. Dla każdego z podkryteriów ze zbioru istnieje możliwość dokonania analogicznego zapisu.

Połączenia klas (ang. Union classes) są opisywane poprzez połączenie dwóch lub więcej klas, wykorzystując w tym celu operator OR ⊔. Dla ontologii metod i technik wspomagających dobór i ocenę składników COTS bezimienna klasa będzie zawierać indywidualności należące do klas: APCS, CAP, CARE, CBCPS, CDSEM, CEP, CSID, COSTUME, COTS-Agent Based System, CRE, Cil, Colombo i Francalanci, DBCS, Erol i Ferrel, FCS, GOThIC, IusWare, Jung i Choi, Lai, MAS, MRETS, Merad i Lemos, MiHOS, Morera, OTSO, PECA, PORE, RCPEP, SCARLET, SMI, STACE, Scenario-based technique, SedighAli, StoryBoard, Teltumbde, Wang, Wei i Wang oraz WinWin Sprial Model.

Ponadto, dokonano również opisu relacji zachodzących pomiędzy poszczególnymi indywidualnościami (APCS, CAP, CARE, CBCPS, CDSEM, CEP, CSID, COSTUME, COTS-Agent Based System, CRE, Cil, Colombo i Francalanci, DBCS, Erol i Ferrel, FCS, GOThIC, IusWare, Jung i Choi, Lai, MAS, MRETS, Merad i Lemos, MiHOS, Morera, OTSO, PECA, PORE, RCPEP, SCARLET, SMI, STACE, Scenario-based technique, SedighAli, StoryBoard, Teltumbde, Wang, Wei i Wang, WinWin Sprial Model) wykorzystując do tego celu własności (ang. Object properties). Ma to na celu przedstawienie relacji binarnych pomiędzy dwoma obiektami dla poszczególnych indywidualności, wskazując tym samym na występowanie łącznie dwóch indywidualności. W ontologii metod i technik wspomagających dobór i ocenę składników COTS istnieje bardzo duża liczba tego typu relacji dla trzech sprecyzowanych własności. Dla ontologii metod i technik wspomagających dobór i ocenę składników COTS zdefiniowano następujące własności: maKryterium oraz jestKryterium, a także maWiarygodnoscOceny. Własność maKryterium jest charakteryzowana przez parametr:

inwersja funkcjonalna (ang. Inverse functional), natomiast własność jestKryterium charakteryzuje parametr: funkcjonalność. Oznacza to, że co najwyżej jedna indywidualność może być przypisana do danej indywidualności przez tą własność. W przypadku inwersji funkcjonalnej występuje sytuacja odwrotna. Ponadto, dla własności jestKryterium została zdefiniowana dziedzina (ang. Domain) Kryteria oraz zasięg (ang. Range) w postaci Metoda oceny COTS. Natomiast dla własności maKryterium została zdefiniowana dziedzina (ang.

Domain) Metoda oceny COTS oraz zasięg (ang. Range) w postaci Kryteria. W ten sposób zostały określone aksjomaty wykorzystywane podczas procesu wnioskowania. Dla ontologii metod i technik wspomagających dobór i ocenę składników COTS własność maKryterium wskazuje na indywidualności należące do klasy Metoda oceny COTS względem indywidualności należących do klasy Kryteria. Jako, że inwersję własności maKryterium stanowi własność jestKryterium, to własność ta wskazuje na indywidualności należące do klasy Kryterium względem indywidualności należących do klasy Metoda oceny COTS. Natomiast własność maWiarygodnoscOceny charakteryzuje parametr funkcjonalność oraz jako zasięg wskazana została klasa zdefiniowana w postaci Wiarygodność Oceny.

Dla własności maKryterium w ontologii metod i technik wspomagających dobór i ocenę składników COTS zostały przypisane również ograniczenia ilościowe (ang. Quantifier restrictions) w postaci ograniczeń egzystencjalnych (ang. Existential restricions) oraz uniwersalnych (ang. Universal restrictions). Ograniczenia egzystencjalne, stanowiące jednocześnie warunki konieczne (ang. Necessary conditions) do spełnienia wskazują, iż dana indywidualność z ontologii metod i technik wspomagających dobór i ocenę składników COTS należąca do klasy Metoda oceny COTS, jednocześnie należy do klasy Thing i musi posiadać co najmniej jedno kryterium z klasy Kryteria. Przykładowo dla metod i technik wspomagających dobór i ocenę składników COTS koniecznym jest, aby narzędzie CARE należało do klasy Nazwa metody oraz do klasy Metoda oceny COTS. W przypadku ograniczeń uniwersalnych (oznaczanych symbolem ∀) założeniem jest ograniczenie występujących relacji pomiędzy daną własnością względem indywidualności z ontologii metod i technik wspomagających dobór i ocenę składników COTS przypisanych do określonej klasy. Przykładowo, uniwersalne

109 ograniczenie ∀ maKryterium Szczegółowy Opis Oprogramowania wskazuje na te indywidualności ze wszystkich relacji maKryterium, które należą do klasy Szczegółowy Opis Oprogramowania, oraz te, które nie posiadają relacji maKryterium względem indywidualności, które nie należą do klasy Szczegółowy Opis Oprogramowania.

Ponadto, jako rozszerzenie możliwości ograniczeń uniwersalnych zastosowano w ontologii metod i technik wspomagających dobór i ocenę składników COTS aksjomaty domknięcia (ang.

Closure axioms). Celem ich zastosowania jest zapewnienie działania wraz z daną własnością w celu wyrażenia, iż mogą zostać wypełnione tylko przez szczegółowe „wypełniacze” (ang.

fillers). W przypadku zastosowania aksjomatu domknięcia dla własności maKryterium dla przykładowej metody CARE, będącej jednocześnie ograniczeniem uniwersalnym, występuje działanie pomiędzy własnością maKryterium z wypełniaczem połączenia Szczegółowy Opis Oprogramowania z:

Ustalenie Celów i Specyfikacji,

Wykorzystanie Technicznych Atrybutów,

Zastosowanie Opisu Oprogramowania z Bazy Wiedzy lub Repozytorium, Zorientowanie Celowe.

Można to sprowadzić również do postaci:

∀ maKryterium SzczegolowyOpisOprogramowania ⊔ UstalenieCelowSpecyfikacji ⊔ WykorzystanieTechnicznychAtrybutow ⊔

ZastosowanieOpisuOprog_zBazyWiedzyRepozytorium ⊔ ZorientowanieCelowe.

Rys. 4.12. Przykład zastosowania aksjomatów domknięcia dla metody CARE . Źródło: Opracowanie własne.

Oznacza to, że dana metoda należy do CARE, następnie musi również należeć do klasy Metoda oceny COTS oraz musi mieć co najmniej po jednym kryterium, które należy do:

Szczegółowy Opis Oprogramowania, Ustalenie Celów i Specyfikacji,

Wykorzystanie Technicznych Atrybutów,

Zastosowanie Opisu Oprogramowania z Bazy Wiedzy lub Repozytorium, Zorientowanie Celowe.

W ontologii metod i technik wspomagających dobór i ocenę COTS dokonany został opis poszczególnych klas przy wykorzystaniu dostępnych ograniczeń w postaci klas podstawowych (ang. Primitive classes) oraz klas zdefiniowanych (ang. Defined classes). W przypadku klas zdefiniowanych zostały określone szczegółowe parametry, jakie poszczególne indywidualności musza przyjmować, aby przynależeć do danej klasy. Zostały określone następujące klasy zdefiniowane (54 klasy):

Niska Ocena Składników COTS, Niski Poziom Wiarygodnosci Oceny,

Ocena: Definiowanie Wymagań Łączacych Przypadki Użycia i Screenshooty, Ocena:Użycie AHP,

Ocena: Użycie Algotyrmu Heurystycznego,

110 Ocena: Użycie MCDA,

Ocena: Użycie Metod Eksperckich, Ocena: Użycie Modeli Jakosci,

Ocena: Użycie Oceny Sterowania Ryzykiem,

Ocena: Użycie Opisu Oprogramowania z Bazy Wiedzy lub Repozytorium, Ocena: Użycie Pierwowzorow,

Określenie Ważnosci Kryteriów: Hierarchiczny Model Decyzyjny, Określenie Ważnosci Kryteriów: Klastry i Mechanizmy DSS, Określenie Ważnosci Kryteriów: MCDA,

Określenie Ważnosci Kryteriów: Rozmyta Teoria Zbiorów, Określenie Ważnosci Kryteriów: Rozmyte QFD,

Określenie Ważnosci Kryteriów: Szczegółowy Opis Oprogramowania, Określenie Ważnosci Kryteriów: Użycie Narzędzia,

Sposób Określenia Kryteriów: Wagi,

Sposób Określenia Kryteriów: Arkusz Kalkulacyjny Modelu, Sposób Określenia Kryteriów: Burza Mózgów,

Sposób Określenia Kryteriów: Identyfikacja Wymagań, Sposób Określenia Kryteriów: Mechanizmy DSS, Sposób Określenia Kryteriów: NGT,

Sposób Określenia Kryteriów: Porownanie Elementów CBS, Sposób Określenia Kryteriów: Szablon Kryteriów,

Sposób Określenia Kryteriów: Szczegółowa Analiza Wymagań, Sposób Określenia Kryteriów: Ustalenie Celów i Specyfikacji, Sposób Określenia Kryteriów: Wywiad lub Kwestionariusz, Sposób Określenia Kryteriów: przez Decydenta,

Średni Poziom Wiarygodności Oceny, Średnia Ocena Składników COTS,

Wykorzystanie Deterministycznego Typu Informacji Preferencyjnej, Wykorzystanie Kardynalnego Typu Informacji Preferencyjnej, Wykorzystanie Narzędzi Wspomagających Ocenę,

Wykorzystanie Niedeterministycznego Typu Informacji Preferencyjnej, Wykorzystanie Porządkowego Typu Informacji Preferencyjnej,

Wykorzystanie Rozmytego Typu Informacji Preferencyjnej, Wykorzystanie Typu Inforamcji Preferencyjnej,

Wysoka Ocena Składników COTS, Wysoki Poziom Wiarygodności Oceny, Zapewnienie Powtarzalności Procesu Oceny.

111 Rys. 4.13. Prezentacja graficzna pełnego zbioru klas zdefiniowanych dla metod i technik wspomagających wybór i ocenę składników COTS. Źródło: Opracowanie własne.

112 W przypadku klas zdefiniowanych: Niski Poziom Wiarygodności Oceny, Średni Poziom Wiarygodności Oceny, Wysoki Poziom Wiarygodności Oceny koniecznym było utworzenie dodatkowych klas zdefiniowanych w celu osiągnięcia zadowalających rezultatów wyszukiwania. Każda ze zdefiniowanych klas w ontologii metod i technik spełnia zarówno warunki konieczne jak i wystarczające (ang. Necessary and sufficient conditions). Zastosowanie mechanizmu wnioskującego umożliwia dokonanie obliczeń, a w efekcie zwrócenie tych indywidualności, które przynależą do danej klasy zdefiniowanej.

Oprócz własności przypisanych do poszczególnych obiektów, w ontologii metod i technik wspomagających dobór i ocenę składników COTS określone zostały również własności typu danych (ang. Datatype properties). Pozwoliło to opisać relacje zachodzące pomiędzy występującymi w ontologii indywidualnościami, a wartościami danych. W tym celu utworzono własność typu danych maOceneSkladnikowCOTS, do której przypisano parametr funkcjonalności oraz sprecyzowano dziedzinę jako Metoda oceny COTS. Zasięg typu danych został określony jako integer. Następnie dla każdej z indywidualności należących do klasy Metoda oceny COTS przypisano przyjmowane przez nie wartości. Ponadto, dla każdej z metod i technik należących do klasy Nazwa metody zostały określone indywidualności (ang.

Individuals), dla których następnie korzystając z uprzednio zdefiniowanych własności typów danych przypisano określone wartości. Dla każdego z narzędzi utworzono również adnotacje (ang. Annotation properties), dostarczając tym samym metaopisu poszczególnych rozwiązań.

W ontologii metod i technik wspomagających dobór i ocenę składników COTS utworzono również klasę Podział Wartości (ang. ValuePartition). Jej celem była poprawa jakości opisu poszczególnych klas. Zastosowanie klasy Podział Wartości ogranicza tym samym zasięg możliwych do przyjęcia wartości w postaci aksjomatów pokrycia (ang. Covering axioms) Niska, Średnia, Wysoka dla Wiarygodność Oceny.

Rys. 4.14. Prezentacja graficzna klasy Podział Wartości. Źródło: Opracowanie własne.

W przypadku ontologii metod i technik aksjomat pokrycia wskazuje, że klasa Wiarygodność Oceny jest pokryta przez trzy klasy: Niska, Średnia, Wysoka. Rozdzielenie tych klas względem siebie powoduje, że każdy element należący do klasy Wiarygodność Oceny będzie należeć również do jednej z klas: Niska, Średnia, Wysoka, jednakże nie jest konieczna przynależność elementu z klasy WiarygodnoscOceny do klasy Niska, Średnia lub Wysoka.

Inaczej można to zapisać w postaci:

Union: Klasa WiarygodnoscOceny posiada podklasę Niska ⊔ Średnia ⊔ Wysoka.

4.4. Ontologia narzędzi informatycznych wspomagających dobór i ocenę