Microsoft Business Application Platform (nie) dla programistów

Microsoft Business Application Platform

W ostatnich miesiącach Microsoft udostępnił szereg aplikacji będących częścią tzw. „Microsoft Business Application Platform”. Oprócz dostępnego już wcześniej Microsoft Power BI (Business Intelligence) w skład omawianej platformy wchodzą: Microsoft PowerApps, Microsoft Flow oraz Common Data Services. Omawiana platforma w założeniu ma umożliwiać budowę aplikacji biznesowych, modułów raportowych oraz komponentów integracyjnych działających w chmurze bez konieczności znajomości jakiegokolwiek języka programowania.

Po krótkim zapoznaniu się z omawianymi systemami osobiście uważam, że droga do tego jest jeszcze daleka. Muszę jednak przyznać, że  za pomocą omawianej platformy możliwe jest już stworzenie prostej aplikacji typu CRUD. Stworzona aplikacja działa w przeglądarce internetowej (za pomocą tzw. PowerApps Playera) oraz wewnątrz dedykowanej aplikacji mobilnej. Mamy również możliwość pobierania danych z predefiniowanych systemów źródłowych (w tym oczywiście naszego ulubionego Dynamics 365) oraz budowę przepływów danych między nimi. Wszystko to możemy zrealizować w ramach filozofii „no code”, bez użycia jakiegokolwiek języka programowania, a jedynie za pomocą interfejsu webowego lub aplikacji dostępnych w Windows Store.

Odwracając kota ogonem i promując filozofię „we want code!” niżej podpisany postanowił się przyjrzeć temu, co ww. platforma ma do zaoferowania programistom. Niestety, okazało się, że w tym momencie bardzo niewiele. Możliwości wykorzystywania poszczególnych komponentów Microsoft BAP z poziomu języków programowania są póki co bardzo ograniczone. Wyniki mojego śledztwa znajdziecie poniżej:

Common Data Services

Opis Możliwości dla developerów
Sieciowa baza danych zawierająca model encji (trochę podobny do tego, znanego z systemów Dynamics 365).  Możemy modyfikować istniejący model encji lub dodawać swoje własne. Bazę zasilamy danymi za pomocą Microsoft Flow lub arkuszy Excel. Dane znajdujące się w bazie możemy z kolei wykorzystać jako źródło dla Microsoft PowerApp(s) lub przesłać do zewnętrznego systemu za pomocą Microsoft Flow. W tym momencie brak.

API umożliwiające dostęp do danych oraz zarządzanie CDS ma być podobno udostępnione w 2017 roku.

Microsoft PowerApps

Opis Możliwości dla developerów
Platforma umożliwiająca budowę aplikacji typu CRUD,  działających w przeglądarce internetowej lub wewnątrz klienta mobilnego. Aplikacje PowerApps tworzymy za pomocą graficznego edytora, bez konieczności pisania jakiegokolwiek kodu. Brak możliwości uruchamiania niestandardowego kodu, istnieje jedynie możliwość wykorzystania własnego, REST-owego API (oczywiście spełniającego określone wymagania) jako źródła danych w aplikacji.

Microsoft PowerBI

Opis Możliwości dla developerów
Zestaw narzędzi do raportowania zintegrowana z Microsoft Excel lub działająca w przeglądarce internetowej. Dostępne jest REST-owe API (https://msdn.microsoft.com/en-us/library/mt147898.aspx) umożliwiające zarządzanie danymi oraz działaniem usługi.

Microsoft Flow

Opis Możliwości dla developerów
System umożliwiający tworzenie przepływów danych między systemami dla których udostępniono stosowne connectory. Szyną danych nazwać tego nie można, natomiast proste automatyzacje przepływów danych w Microsoft Flow wyklikamy. 1. Możliwość wykorzystywania niestandardowego API (będącego w rzeczywistości connectorem do zewnętrznego, niewspieranego z pudełka systemu), zintegrowania go z Microsoft Flow i udostępnienia innym użytkownikom tejże platformy.
2. Możliwość triggerowania przepływów danych na platformie Microsoft Flow za pomocą tzw. „webhooks” (https://webhooks.pbworks.com).
3. Integracja z aplikacją internetową za pomocą IFRAME.

Wygląda to bardzo mizernie, zwłaszcza w porównaniu ze „starymi” produktami MS (również tymi działającymi w chmurze), dla których producent dostarczał zazwyczaj dobre, „pałerne” API oraz SDK.

Niech więc poniższe drzewko posłuży za podsumowanie aktualnej sytuacji…

Total Views: 894 ,