Usługi SOA i rozwiązania chmurowe w zasięgu Państwa budżetu

Trudności, z jakimi boryga się współczesna gospodarka, stwarzają nowe wyzwania dla organizacji. Budżety poszczególnych działów są redukowane, a duże zakupy poddawane szczegółowej analizie. Kosztowne oprogramowanie dla przedsiębiorstw i systemy komputerowe mainframe, które kiedyś obiecywały wiele, są ponownie analizowane na całym świecie, a na ich miejsce wprowadzane bardziej elastyczne systemy oparte na komponentach, które obniżają koszty i zwiększają efektywność, wykorzystując nowoczesne koncepcje, takie jak architektura zorientowana na usługi (SOA) i chmura obliczeniowa. Te koncepcje architektoniczne integrują nowoczesne technologie i podejścia obiektowe, aby rozwiązywać realne problemy technologiczne w złożonych środowiskach, jednocześnie obniżając koszty utrzymania, integracji i wdrażania dzięki modułowej konstrukcji i ponownemu wykorzystaniu komponentów.

Zestaw narzędzi Altova MissionKit to bardzo przystępne cenowo rozwiązanie, idealnie dopasowane do adaptacji do zmian w kierunku bardziej elastycznej i lekkiej infrastruktury. Dzięki solidnemu wsparciu dla XML, UML, baz danych oraz technologii integracji danych, MissionKit oferuje wszystkie narzędzia niezbędne do tworzenia elastycznych architektur, charakteryzujących się powtarzalnymi usługami, komponentami, które można ponownie wykorzystać, oraz zasobami, które można łatwo skalować.

Architektura SOA i chmura obliczeniowa

Architektura SOA (Service-Oriented Architecture) oraz usługi webowe i chmurowe to dwa z najpopularniejszych terminów w dzisiejszej technologii. Choć te koncepcje mają pewne wyraźne różnice, obie reprezentują przełom w podejściu do systemów korporacyjnych, przechodząc od dużych, monolitycznych systemów do architektur opartych na usługach, zbudowanych z modułowych komponentów i wykorzystujących funkcjonalności wielokrotnego użytku. Podejście SOA ma na celu umożliwienie organizacjom szybszego reagowania na potrzeby biznesowe poprzez pakowanie procesów w postaci sieci interoperacyjnych i powtarzalnych usług. Ta modularność zapewnia elastyczność systemu i daje programistom możliwość wprowadzania nowych funkcjonalności do istniejącego systemu w razie potrzeby – bez konieczności ponownego tworzenia wszystkiego od podstaw.

SOA (Service-Oriented Architecture) to w zasadzie zestaw powiązanych ze sobą i autonomicznych usług, których funkcjonalność jest dynamicznie lokalizowana i uruchamiana na podstawie określonych kryteriów, przekazywanych w wiadomościach. Kluczowym elementem SOA jest wysoki poziom ponownego wykorzystania komponentów, co obniża koszty i zwiększa efektywność w w pełni skalowalnej architekturze.

Usługi chmurowe opierają się na koncepcji współdziałających usług, dodając komponent wirtualizacji, który ma na celu odciążenie wewnętrznych serwerów, które są przeciążane ciągłym wykorzystywaniem tych usług w systemie. To podejście wykorzystuje Internet i technologie umożliwiające dostęp do Internetu, aby zwiększyć wydajność i szybkość przetwarzania poprzez trwałe przechowywanie informacji w "chmurze" oraz tymczasowe buforowanie ich na urządzeniach klienckich. Wdrożenie usług chmurowych to potężna opcja zwiększenia pojemności i możliwości systemu, wykorzystująca nowoczesne centra danych w połączeniu z siecią World Wide Web.

Zarówno architektura SOA (Service-Oriented Architecture), jak i chmura obliczeniowa mają na celu rozwiązanie problemów wynikających z sztywnych architektur, które w dużym stopniu opierają się na ściśle powiązanej infrastrukturze aplikacji biznesowych. To skupienie się na interoperacyjności i niezależnych usługach programowych ujawnia rozproszone rozwiązanie, które jest oparte na zdarzeniach, elastyczne i uwzględnia koszty w niemal każdym środowisku.

Architektura oparta na usługach: budowa i zasady działania

Od momentu ich powstania, XML i Usługi internetowe XML zyskały szerokie uznanie jako standardy zapewniające bezpieczną, wydajną i niezależną od platform wymianę danych między aplikacjami programowymi oraz przez Internet. XML stanowią podstawę protokołów, które napędzają infrastrukturę usług internetowych: WSDL (Web Services Description Language) oraz SOAP, standard wymiany komunikatów oparty na XML. Usługi internetowe są niezależne od sprzętu, języka programowania i systemu operacyjnego, co oznacza, że doskonale nadają się do płynnej i interoperacyjnej wymiany danych w sieci oraz są idealnie dopasowane do systemów opartych na komponentach.

Architektura usług internetowych

Zarówno architektury SOA, jak i oparte na chmurze, zazwyczaj wykorzystują WSDL do opisu interakcji i funkcjonalności, a także do lokalizowania komponentów systemu. WSDL współpracuje z protokołem SOAP, który jest używany przez aplikację kliencką do wywoływania metod i funkcji zdefiniowanych w opisie WSDL. Poniższy przykład to przykład notowań giełdowych, używany w Specyfikacja WSDL opracowana przez W3C i opisuje prostą usługę, która wykonuje pojedynczą operację: pobiera aktualne ceny akcji na podstawie wprowadzonego symbolu giełdowego. Oczywiście, większość usług dostępnych w architekturach korporacyjnych jest znacznie bardziej złożona.

Weźmy na przykład publicznie dostępne usługi Amazon Web Services, które oferują dostęp do usług i infrastruktury chmurowej dla coraz większej liczby firm na całym świecie, w tym dla Twittera, SmugMug i WordPress.com. Te usługi w zasadzie pozwalają niezależnym organizacjom wynajmować część ogromnej mocy obliczeniowej, którą oferuje rozproszone środowisko Amazon, a także zapewniają im skalowalność, niezawodność i możliwość rozbudowy ich obecności w Internecie, przy znacznie niższych kosztach.

Oczekiwany system Windows Azure firmy Microsoft® działa w oparciu o podobny model, dając programistom możliwość tworzenia i wdrażania aplikacji opartych na chmurze, przy minimalnym wykorzystaniu zasobów lokalnych. Firma Amazon udostępnia plik WSDL, który zawiera definicję usługi internetowej, żądania, które usługa przyjmuje, i inne informacje. Programiści mogą następnie tworzyć aplikację kliencką opartą na protokole SOAP, która wywołuje usługę internetową Amazon, aby skorzystać z jej funkcjonalności. (Obecnie firma Amazon oferuje szereg usług opartych na chmurze, przeznaczonych do hostingu aplikacji, tworzenia kopii zapasowych i przechowywania danych, dostarczania treści, e-commerce, wyszukiwania oraz obliczeń o wysokiej wydajności.)

Altova MissionKit

Ostatnio nazwany "Najlepsze środowisko programistyczne" w nagrodach Jolt Product Excellence Awards, Altova MissionKit to zbiór różnorodnych narzędzi programistycznych, które oferują skalowalne rozwiązania umożliwiające wykorzystanie istniejących zasobów programowych w środowisku SOA (Service-Oriented Architecture) lub w chmurze.

Silne wsparcie dla XML, usług internetowych, integracji danych, automatyzacji procesów oraz baz danych, a także dostęp do zaawansowanych interfejsów API, oferują programistom elastyczne możliwości tworzenia rozwiązań opartych na usługach, stanowiąc jednocześnie przystępną alternatywę dla kosztownych usług konsultantów, narzędzi do ekstrakcji, transformacji i ładowania danych (ETL) oraz produktów typu Enterprise Service Bus (ESB). Zestaw Altova MissionKit* umożliwia kompleksowy rozwój usług internetowych i zawiera: Edytor WSDL z interfejsem graficznym, wizualny Narzędzie do tworzenia usług internetowych, zaawansowane funkcje do zarządzania relacjami między plikami WSDL oraz innymi plikami XML, a także Klient i narzędzie debugowania protokołu SOAP, Integracja danych za pomocą WSDL, generowanie kodu i wiele więcej.

Wszystkie te funkcje razem tworzą kompleksowe rozwiązanie umożliwiające integrację różnych usług i systemów w środowisku obliczeń rozproszonych, niezależnie od tego, czy komponenty znajdują się w infrastrukturze wewnętrznej, w sieci, czy w chmurze.

Edytor WSDL

XMLSpy Edytor XML zapewnia graficzny interfejs użytkownika (GUI) do projektowania i Edycja dokumentów WSDL. Struktura i komponenty pliku WSDL są tworzone w głównym oknie projektowania za pomocą narzędzi graficznych (z zakładkami umożliwiającymi przełączanie między widokiem tekstowym), a dodatkowe funkcje edycji są dostępne za pośrednictwem rozbudowanych okien pomocniczych. Użytkownicy mogą łatwo tworzyć i edytować wiadomości, typy danych, operacje, typy portów, powiązania itp. bezpośrednio w oknie. Ponadto, publicznie dostępne pliki WSDL, takie jak Amazon Simple Storage Service (Amazon S3), (poniżej), można natychmiast otworzyć za pomocą Otwórz adres URL polecenie w programie XMLSpy.

Edytor WSDL w programie XMLSpy zapewnia programistom zaawansowane środowisko do szybkiego tworzenia usług internetowych, umożliwiając zarządzanie składnią i walidację plików WSDL za pomocą intuicyjnego, graficznego interfejsu "przeciągnij i upuść". Dodatkowa funkcja generowania dokumentacji umożliwia udostępnianie pełnych szczegółów interfejsu usługi internetowej osobom nietechnicznym w formacie HTML lub Microsoft Word.

Klient SOAP

Żądania SOAP można tworzyć ręcznie w narzędziu klient SOAP w programie XMLSpy, wykorzystując operacje zdefiniowane w pliku WSDL. Po wybraniu operacji, XMLSpy inicjuje żądanie, korzystając z informacji o połączeniu zawartych w pliku WSDL, i wyświetla składnię XML powłoki SOAP w głównym oknie. Następnie wiadomość można wysłać bezpośrednio do serwera, aby otrzymać natychmiastową odpowiedź.

Debugger dla protokołu SOAP

XMLSpy zawiera również debugger SOAP, który działa jako serwer proxy dla usług internetowych między klientem a serwerem, umożliwiając programistom analizę plików WSDL oraz komponentów wiadomości SOAP, śledzenie transakcji krok po kroku, ustawianie punktów przerwania w funkcjach SOAP oraz definiowanie warunkowych punktów przerwania, które są aktywowane przez określone zapytanie XPath.

Tworzenie usług internetowych

Po zakończeniu definiowania pliku WSDL, można go również zaimplementować wizualnie za pomocą narzędzia MapForce, produktu firmy Altova, który umożliwia konwersję danych pomiędzy dowolnymi formatami narzędzie do integracji danych. MapForce umożliwia użytkownikom mapowanie danych do lub z operacji WSDL. Ścisła integracja z Visual Studio i Eclipse pozwala na kompilację kodu w jednym z tych środowisk programistycznych oraz na wdrożenie usługi na komputerze klienta. Podczas tworzenia nowego projektu usługi internetowej, podając plik definicji usług internetowych (WSDL), MapForce automatycznie generuje pliki mapowania dla każdej indywidualnej operacji SOAP.

Wiadomości wejściowe i wyjściowe w formacie SOAP można następnie łatwo dopasować do innych komponentów danych źródłowych (XML, bazy danych, pliki tekstowe, EDI, XBRL, Excel 2007), aby stworzyć kompleksową operację usług internetowych. Można również wstawiać funkcje przetwarzania danych, filtry i stałe, aby w czasie rzeczywistym przekształcać dane.

MapForce może automatycznie generować kod implementacji usług internetowych w językach Java lub C# do zastosowania po stronie serwera, a także umożliwia automatyzację procesów za pomocą wiersza poleceń oraz za pośrednictwem serwera MapForce.

Zarządzanie relacjami z plikami

Dla złożonych aplikacji internetowych, które obejmują dużą liczbę różnych plików i zaangażowanych osób, MissionKit oferuje zaawansowane narzędzie graficzne do zarządzania relacjami między plikami XML, dostępne w module SchemaAgent. SchemaAgent umożliwia analizę i zarządzanie relacjami między schematami XML, dokumentami instancji XML (SOAP), plikami WSDL i XSLT. Opcja klient/serwer umożliwia wizualizację wszelkich zmian w czasie rzeczywistym w całej grupie roboczej.

To umożliwia organizacjom śledzenie i zarządzanie kluczowymi dla ich działalności plikami SOA jako niezależnymi, wielokrotnego użytku komponentami, co skraca czas rozwoju i zmniejsza ryzyko wystąpienia błędów.

Integracja danych

Kluczowym elementem każdej architektury SOA jest możliwość płynnej komunikacji między różnymi systemami za pomocą zautomatyzowanych procesów. MapForce, jako narzędzie do graficznej integracji danych i implementacji usług internetowych, umożliwia realizację tego zadania, oferując wsparcie dla szerokiej gamy formatów danych, w tym XML, bazy danych, pliki tekstowe (które można łatwo przetwarzać w celu integracji ze starszymi systemami za pomocą unikalnego narzędzia FlexText™), EDI, XBRL, Excel 2007 oraz usługi internetowe.

MapForce obsługuje złożone scenariusze mapowania danych, obejmujące wiele źródeł i celów, a także zaawansowane funkcje przetwarzania danych. Transformacje można łatwo automatyzować za pomocą serwera MapForce. Pełna integracja z Visual Studio i Eclipse sprawia, że jest to również idealne narzędzie do tworzenia oprogramowania w dużych projektach korporacyjnych – przy czym nie wiąże się to z wysokimi kosztami. To daje programistom elastyczny i dynamiczny komponent middleware, który może działać w praktycznie każdej architekturze opartej na usługach. Możliwość integracji różnych danych w czasie rzeczywistym jest kluczowym wymaganiem w rzeczywistych systemach korporacyjnych i międzykorporacyjnych, gdzie systemy starszej generacji oraz inne, mniej elastyczne formaty współistnieją z XML i innymi nowoczesnymi, interoperacyjnymi standardami.

Zarządzanie bazami danych

Nawet w szybko rozwijającym się ekosystemie internetu 2.0, w którym kluczową rolę odgrywa semantyka, większość firm nadal korzysta z jednej lub więcej relacyjnych baz danych do przechowywania i zarządzania swoimi wewnętrznymi zasobami danych. Zestaw narzędzi Altova MissionKit umożliwia pracę z najpopularniejszymi z tych systemów na wiele różnych sposobów. Wsparcie dla baz danych jest dostępne w programach XMLSpy, MapForce, StyleVision oraz, oczywiście, DatabaseSpy.

DatabaseSpy to narzędzie do wykonywania zapytań, edycji, projektowania i porównywania baz danych, które umożliwia użytkownikom bezpośrednie łączenie się z głównymi bazami danych oraz edycję danych i projektowanie struktury w graficznym interfejsie użytkownika. Narzędzie oferuje takie funkcje jak przeglądanie tabel, edycja danych, automatyczne uzupełnianie zapytań SQL, wizualne projektowanie tabel, porównywanie i łączenie danych oraz eksport do wielu formatów. W architekturze opartej na usługach, możliwość bezpośredniego porównywania i łączenia danych w natywnym formacie bazy danych jest ogromnym atutem dla programistów, którzy muszą lokalizować zmiany, przenosić różnice lub synchronizować wersje tabel baz danych między środowiskami testowymi i produkcyjnymi.

Jako element pakietu MissionKit, DatabaseSpy oferuje różnym zespołom wewnątrz organizacji możliwość jednoczesnej pracy z danymi z wielu baz danych, korzystając z jednego, centralnego interfejsu. Niezależnie od tego, czy dane te zostaną w końcu zintegrowane z innymi systemami lub aplikacjami, czy też będą przechowywane na stałe w bazie danych, DatabaseSpy zapewnia proste i elastyczne rozwiązanie do zarządzania i utrzymywania dużych zbiorów danych.

Wydawnictwo jednoźródłowe

W dzisiejszym świecie, w którym transfer i zarządzanie danymi są wysoce zautomatyzowane, nadal konieczne jest, aby ludzie w końcu przetwarzali te dane w jakiejś formie. Problem, z którym często borykają się organizacje, to wybór odpowiedniego formatu publikacji. Technologie XML i publikacja z jednego źródła zrewolucjonizowały zarządzanie treścią, wymianę dokumentów, a nawet komunikację wielojęzykową, oddzielając strukturę treści od jej wyglądu. System dokumentacji oparty na XML może znacznie obniżyć koszty, ułatwiając konwersję danych do wielu różnych formatów i typów aplikacji. Koncepcja "jednego źródła" zapewnia, że procesy robocze (np. konwersja, edycja) nie muszą być powtarzane ani przepisywane – że cała zawartość w repozytorium wymaga jedynie minimalnej restrukturyzacji i przygotowania przed załadowaniem do odpowiednich aplikacji w celu dystrybucji.

Altova StyleVision to narzędzie do projektowania arkuszy stylów, które umożliwia użytkownikom łatwe wykorzystanie koncepcji publikacji z jednego źródła do treści XML, XBRL i baz danych, bez wpływu na dane źródłowe. Dzięki temu firmy mogą tworzyć wielokrotnego użytku szablony danych, które następnie mogą być automatycznie konwertowane do formatów HTML, RTF, PDF, Microsoft Word 2007, a nawet do formularzy elektronicznych, umożliwiając natychmiastową publikację w dowolnym medium bez zakłóceń w procesie – co skutkuje prezentacją dokładnych, spójnych i ustandaryzowanych informacji w czasie rzeczywistym.

System publikacji oparty na pojedynczym źródle daje organizacjom możliwość dodania elementu ludzkiego do ich wysoce zautomatyzowanych procesów przetwarzania danych, umożliwiając im przeglądanie raportów przesyłania na każdym etapie. Na przykład, w świecie, w którym zarządzanie zgodnością odgrywa tak dużą rolę w codziennej działalności przedsiębiorstw, StyleVision może być zintegrowany z dowolnym systemem SOA, aby zapewnić rodzaj wizualnego śladu audytu, umożliwiającego ręczną weryfikację transakcji XML, XBRL i baz danych. Podejście StyleVision oparte na szablonach w zakresie projektowania arkuszy stylów sprawia, że jest to idealne rozwiązanie uzupełniające środowisko rozproszonego rozwoju, gdzie powtarzalne procesy są integralną częścią ogólnej efektywności systemu.

Wnioski

Spowolnienia gospodarcze mogą utrudniać decyzje dotyczące inwestycji w technologie. Jednakże, firmy o dalekowzrocznym podejściu zauważą, że skupienie się na restrukturyzacji istniejących zasobów, automatyzacji wewnętrznych procesów oraz dodaniu warstwy wirtualizacji do infrastruktury aplikacji może prowadzić do zwiększenia efektywności, szybkości, a potencjalnie do ogromnego zwrotu z inwestycji. Altova MissionKit oferuje firmom wszystkie narzędzia potrzebne do wzmocnienia ich architektury przedsiębiorstwa za pomocą iteracyjnych, opartych na procesach rozwiązań, które pozwolą na odzyskanie kosztów poprzez ponowne wykorzystanie istniejących zasobów oraz umożliwiają wdrażanie automatyzacji opartych na technologiach internetowych wewnątrz i między organizacjami na skalę globalną.

MissionKit to bardzo przystępne cenowo rozwiązanie, które oferuje programistom, architektom oprogramowania i użytkownikom IT wszystkie narzędzia potrzebne do tworzenia elastycznych i wydajnych rozwiązań technologicznych, zwiększających efektywność infrastruktury opartej na komponentach i zorientowanej na usługi – bez przekraczania budżetu.