Spis treści – Archimate 3.0
Elementy opisujące warstwę systemów informatycznych
Warstwa aplikacji wspiera warstwę biznesową za pomocą usług aplikacji, które są realizowane przez oprogramowanie. Elementy warstwy systemów informatycznych pozwalają na opisanie, na bardzo wysokim poziomie abstrakcji, systemów wraz realizowanymi przez nie procesami aplikacyjnymi oraz dostarczanymi funkcjami.
Na stronie tej opisano następujące elementy:
- Komponent aplikacji (Application Component)
- Współpraca aplikacji (Application Collaboration)
- Interfejs aplikacji (Application Interface)
- Funkcja aplikacji (Application Function)
- Interakcja aplikacji (Application Interaction)
- Proces aplikacji (Application Process)
- Zdarzenie aplikacji (Application Event)
- Usługa aplikacji (Application Service)
- Obiekt danych (Data Object)
Aktywne elementy strukturalne
Komponent aplikacji (Application Component)
Komponent aplikacji jest zdefiniowany jako modułowa, przenośna i wymienna część oprogramowania systemowego, które obejmuje jego zachowania i dane, oraz udostępnia je poprzez zestaw interfejsów.
Komponent aplikacji jest samowystarczalną jednostką funkcjonalności i może być niezależnie wdrażany, wielokrotnie wykorzystywany i wymieniany. Komponent aplikacji wykonuje jedną lub więcej funkcji aplikacji. Jest hermetyczny – jego funkcjonalność jest dostarczana wyłącznie przez zestaw zdefiniowanych interfejsów. Kooperacja komponentów aplikacji dokonywana jest za pomocą kolaboracji aplikacji.
Komponent aplikacji może być przypisany do jednej lub więcej funkcji aplikacji, procesu biznesowego lub funkcji biznesowej. Posiada jeden lub więcej interfejsów aplikacji, które udostępniają jego funkcjonalność do otoczenia, a także może wykorzystywać interfejsy udostępnione przez inne komponenty.
Komponent aplikacji
Na modelu poniżej Aplikacja finansowa jest przedstawiona jako komponent aplikacji składający się z dwóch innych komponentów aplikacji Komponentu rachunkowości i Komponentu rozliczeń. Każdy z nich oferuje odpowiednie usługi aplikacji dla środowiska w których funkcjonują. Usługi te są dostępne poprzez współdzielony Interfejs rozliczeń i rachunkowości.
Przykład użycia komponentu aplikacji
Współpraca aplikacji (Application Collaboration)
Współpraca aplikacji jest zdefiniowana jako agregacja dwóch lub więcej komponentów aplikacji, które współdziałają aby zapewnić wspólne zachowanie.
Współpraca aplikacji specyfikuje, które komponenty współdziałają aby wykonać określone zadanie. Modeluje ona zazwyczaj logiczną lub tymczasową współpracę komponentów aplikacji i nie istnieje jako samodzielna jednostka w korporacji.
Współpraca aplikacji jest specjalizacją komponentu i agreguje dwa lub więcej komponenty aplikacji. Może zostać przypisana do jednej lub więcej interakcji aplikacji lub interakcji biznesowej. Współpraca może tak jak komponent aplikacji udostępniać interfejsy, jak i korzystać z interfejsów udostępnionych przez inne kolaboracje i komponenty aplikacji.
Współpraca aplikacji – notacja
Na modelu poniżej przedstawione zostały dwa komponenty (Komponent rachunkowości i Komponent rozliczeń), które współpracują tworząc współpracę aplikacji Administrator przelewów. Współpraca przypisana jest do interfejsu rozliczeń i rachunkowości.
Przykład użycia kolaboracji aplikacji
Interfejs aplikacji (Application Interface)
Interfejs aplikacji jest zdefiniowany jako punkt dostępu w którym usługi aplikacji są udostępnione dla użytkowników lub innych komponentów aplikacji.
Interfejs aplikacji specyfikuje w jaki sposób funkcjonalność aplikacji może być wykorzystana przez inne komponenty. Należy pamiętać, że ta sama usługa może być udostępniona przez wiele interfejsów.
Interfejs aplikacji – notacja
Elementy zachowania
Funkcja aplikacji (Application Function)
Funkcja aplikacji jest zdefiniowana jako element zachowania, który grupuję zautomatyzowane zachowania, które mogą być uruchamiane przez komponent aplikacji.
Funkcja aplikacji opisuje wewnętrzne zachowanie komponentu aplikacji. Jeżeli to zachowanie jest udostępniane na zewnątrz, to jest realizowane ono przez jedną lub więcej usług aplikacji. Funkcje aplikacji nie opisują natomiast w jaki sposób to zachowanie jest implementowane. Funkcja aplikacji wskazuje tylko na informacje istotne z punktu widzenia otoczenia.
Funkcja aplikacji może realizować jedną lub więcej usług aplikacji. Usługi aplikacji realizowane przez inne funkcje oraz usługi infrastruktury mogą być wykorzystywane przez funkcje aplikacji. Funkcje aplikacji mogą korzystać z obiektów danych. Komponent aplikacji może być przypisany do jednej lub więcej funkcji (co oznacza, że komponent ten wykonuje funkcję aplikacji).
Funkcji aplikacji – notacja
Interakcja aplikacji (Application Interaction)
Interakcja aplikacji jest zdefiniowana jako element zachowania, który opisuje zachowanie realizowane przez dwa lub więcej komponentów aplikacyjnych.
Interakcja aplikacji opisuje zespół zachowań, który jest wywoływany przez komponenty które uczestniczą we współpracy aplikacji. Interakcja aplikacji może także opisywać zachowanie widoczne z otoczenia, które jest potrzebne do realizacji usługi aplikacji. Szczegóły interakcji pomiędzy komponentami mogą zostać wyszczególnione na przykład za pomocą diagramów interakcji języka UML.
Interakcja może być połączona z innymi elementami modelu za pomocą takich samych relacji jak w przypadku funkcji aplikacji, z tym, że interakcja jest przypisana do elementu współpraca aplikacji, a nie konkretnego komponentu aplikacji. Interakcja aplikacji może być realizowana prze usługę aplikacji.
Interakcja aplikacji – notacja
Proces aplikacji (Application Process)
Proces aplikacji reprezentuje sekwencję zachowań aplikacji, która osiąga określony wynik.
Proces aplikacji opisuje wewnętrzne zachowanie, które wykonywane jest przez składnik aplikacji (cześć systemu). Realizacja procesu aplikacji wymaga innych usług aplikacyjnych, które są dostarczane przez inne komponenty. Proces aplikacji może uzyskać dostęp do obiektów danych. Komponent aplikacji może być przypisany do procesu aplikacji (co oznacza, że to jego część wykonuje ten proces).
Proces aplikacji – notacja
Zdarzenie aplikacji (Application Event)
Zdarzenie aplikacja jest elementem zachowanie aplikacji, które oznacza zmianę stanu systemu.
Funkcje aplikacji i inne zachowania aplikacji mogą być wyzwalane lub przerywane przez zdarzenie aplikacji. Ponadto zachowanie aplikacji może powodować zdarzenia, które wyzwalają zachowanie innej aplikacji. W przeciwieństwie do procesów, funkcji i interakcji zdarzenie jest natychmiastowe – nie ma czasu jego trwania.
Zdarzenie aplikacji może mieć atrybut czasu, który oznacza moment lub momenty, w których wydarzenie się dzieje. Na przykład można to wykorzystać do modelowania harmonogramów czasowych; np. wydarzenie, które wyzwala codzienny cron.
Zdarzenie aplikacji może wywołać lub zostać wywołane (uruchomione) przez funkcję aplikacji, proces lub interakcję. Zdarzenie aplikacji może uzyskać dostęp do obiektu danych.
Zdarzenie aplikacji – notacja
Usługa aplikacji (Application Service)
Usługa aplikacji reprezentuje jawnie zdefiniowane zachowanie aplikacji.
Usługa aplikacji udostępnia funkcjonalność komponentów. Ta funkcjonalność jest dostępna za pośrednictwem jednego lub więcej interfejsów aplikacji. Usługa aplikacji jest
realizowane przez jedną lub więcej funkcji aplikacji, które są wykonywane przez komponent. Usługa aplikacji może wymagać, używać i tworzyć obiekty danych.
Usługa aplikacji może być wykorzystywana przez procesy, funkcje i interakcje biznesowe, a także funkcje aplikacji.
Usługa aplikacji powinna być znacząca z punktu widzenia jej otoczenia. Musi być użyteczna czyli dostarczać konkretną wartość obiektom, z którymi wchodzi w interakcję.
Oznacza to na przykład, że jeśli usługa aplikacyjna służy (jest potrzebna) procesom biznesowym to powinna mieć znaczenie biznesowe.
Usługa aplikacji – notacja
Na modelu poniżej interakcja aplikacji Rozliczenie konta księgowego zapewnia dwie funkcje Rachunkowość oraz Rozliczenia. Funkcje te realizują usługi, które udostępniane są dla procesu aplikacji Wystawienie faktury. Proces Wystawienie faktury jest uruchamiany zdarzeniem aplikacji Cykliczne rozliczenie usługi.
Przykład użycia usługi aplikacji wraz z procesem aplikacji oraz zdarzeniem aplikacji
Pasywne elementy struktury
Obiekt danych (Data Object)
Obiekt danych reprezentuje dane strukturalne, które są przetwarzane automatycznie.
Obiekt danych powinien być samowystarczalnym elementem informacji, mającym jednoznaczne znaczenie dla biznesu, a nie tylko dla warstwy aplikacji. Funkcje aplikacji lub proces aplikacji operują na tym obiekcie danych.
Obiekt danych może być używany lub tworzony przez usługi aplikacji. Do obiektu danych dostęp może być umożliwiony za pomocą funkcji aplikacji, interakcji aplikacji lub usługi aplikacji. Obiekt danych może realizować obiekt biznesowy i może być realizowany przez artefakt. Obiekt danych może mieć powiązania, specjalizację, agregację lub kompozycję z innymi obiektami danych.
Obiekt danych – notacja
Na przykładzie poniżej zostały przedstawione dwie funkcje aplikacji, które kooperują między sobą wykorzystując usługę aplikacji Przetwarzanie przelewów, w wyniku której przekazywany jest obiekt danych Dane przelewu.
Przykład użycia obiektu danych
Przykładowe perspektywy (punkty widzenia)
Punkt widzenia struktury aplikacji
Punkt widzenia struktury aplikacji przedstawia strukturę jednej lub więcej aplikacji lub jej komponentów. Ten punkt widzenia jest przydatny do zrozumienia głównej struktury aplikacji, jej komponentów, oraz powiązanych z nią danych.
Przykład modelu dla punktu widzenia struktury aplikacji
Punkt widzenia użycia aplikacji
Punkt widzenia użycia aplikacji jest wykorzystywana do przedstawiania w jaki sposób aplikacja jest wykorzystywana do realizacji jednego lub więcej procesów biznesowych oraz jak jest wykorzystywana przez inne aplikacje. Ten punkt widzenia może być wykorzystany do projektowania aplikacji przez identyfikację usług aplikacji jakie są potrzebne dla procesów biznesowych, a także do projektowania procesów biznesowych przez opis dostępnych usług aplikacji, które mogą wykorzystywać.
Przykład modelu dla punktu widzenia użycia aplikacji
Spis treści – Archimate 3.0