Wierzymy w lepsze oprogramowanie

bo je tworzymy

Polski Certyfika BPMN

BPMN nabiera coraz większego znaczenia. Niedawno przeprowadziliśmy z dużym sukcesem wdrożenie kolejnej wersji naszego .NET-owego silnika BPMN w banku, będącego klientem naszego partnera z Niemiec. Teraz nasz BPMN steruje procesem sprzedaży produktów finansowych w filiach tego banku w Szwajcarii. Feedback jest bardzo jednoznaczny. Chwalona jest krzepkość systemu i jego elastyczność osiągnięta mimo dużego skomplikowania. Jakkolwiek będziemy mieli trochę pracy nad stworzeniem niezawodnego programu do modelowaniem procesów, czyli funkcjonalności niezbędnej w codziennych zmaganiach specjalistów domenowym. Nasz nowy Modeler BPMN będzie w centrum tych starań.

Poszerzamy naszą szeroko pojętą wiedzę na temat BPMN. Od tego miesiąca możemy ją potwierdzić za pomocą oficjalnego państwowego „Polskiego Certyfikatu BPMN”, czyli certyfikatu znajomości notacji BPMN wydawanego po zdaniu egzaminu przez Instytut Badań Systemowych Polskiej Akademii Nauk. Nasz certyfikat ma numer 0070/2017. Informacje o nim można znaleźć na stronie PAN.

ExCalc – Floor check

Wraz z naszym partnerem z Niemiec pracujemy aktualnie nad nowym modułem do naszej aplikacji ExCalc – Leasing Calculator. Będzie to moduł do przeprowadzania tzw. „floor check”. Jest to specyficzny rodzaj inwentaryzacji przeprowadzanej na przykład przez leasingodawcę u leasingobiorcy. W tym konkretnym przypadku chodzi o sprawdzenie własności leasingodawcy na terenie leasingobiorcy. Czy leasingowne maszyny są tam gdzie powinny być, czy samochody są całe i nieuszkodzone, czy budynki są użytkowane zgodnie z przeznaczeniem, itd. Taki „floor check” można przeprowadzać ręcznie: kartka papieru z obiektami do sprawdzenia, aparat fotograficzny i pisanie raportów po powrocie do biura. Można też to zrobić automatycznie: telefon komórkowy, synchronizacja obiektów do sprawdzenia do aplikacji, podłączanie zdjęć bezpośrednio z telefonu i automatyczne przesyłanie raportu do systemu. Dokładnie tak pracuje się z naszą aplikacją. Co dajemy ekstra? Wstępną ocenę raportu pod kątem prób oszustwa: weryfikacja koordynatów GPS, kątów ustawienia aparatu fotograficznego telefonu komórkowego, itd. ExCalc – Floor check!

Continuous Defect Prediction

Tańsza siła robocza w Polsce to nie jest broń, którą walczymy o klientów na globalnym rynku. Od samego początku stawiamy na najwyższą jakość i najnowsze technologie. Staramy się również polepszać nasze procedury i techniki inżynierii oprogramowania. Jedną z takich technik jest metoda predykcji błędów serwera ciągłej integracji (CI) z angielskiego Continuous Defect Prediction (CDP). Polega ona na budowaniu modeli uczących się (Machine Learning – ML) na podstawie historycznych danych z serwera CI i użyciu tych modeli na komputerach programistów, by ostrzegać ich czy zmiany, których aktualnie dokonują mogą potencjalnie prowadzić do problemów z budową oprogramowania. Ta nowatorska technika wraz ze zbiorem danych przedstawiona zostanie w na czternastej dorocznej konferencji International Conference on Mining Software Repositories, która odbędzie się 20 i 21 maja w Buenos Aires w Argentynie. Konferencja ta kolokowana jest z największą naukową konferencją w dziedzinie inżynierii oprogramowania: trzydziestej dziewiątej z kolei konferencji International Conference on Software Engineering (w skrócie ICSE), w której również weźmiemy udział. Spotkajmy się w Buenos!

Ludzie – nasz najważniejszy atut

Pięć lat temu sparafrazowaliśmy popularne powiedzenie „myślimy globalnie, działamy lokalnie” i zadeklarowaliśmy, że „myślimy globalnie, działamy… globalnie”. Ostatnie 5 lat utwierdziło nas w przeświadczeniu o poprawności tej maksymy. Nasi nowi klienci z USA mogą to potwierdzić. Nie zapominamy jednak o lokalnym działaniu.

To, co w CODEFUSION najcenniejsze, to ludzie rekrutujący się praktycznie w 100% z lokalnego „runku akademickiego”. Jesteśmy w stanie, co roku poszerzać nasze szeregi o najlepszych absolwentów opolskiej Politechniki lub (rzadziej) Uniwersytetu. Jak to robimy? Mamy szczęście, że Opole jest stosunkowo niewielkim miastem, gdzie działają dwie uczelnie szkolące informatyków. Rocznie ich mury opuszcza ponad 200 absolwentów. Ci spośród nich, którzy nie chcą być wyssani przez korporacje do okolicznych dużych ośrodków, przychodzą do nas. Skąd o nas wiedzą? Kiedy tylko możliwe jesteśmy dla nich dostępni. Jesteśmy regularnym gościem na IT Academic Day oraz Targach Pracy. Byliśmy aktywnym sponsorem Opolskiego Festiwalu Robotów tak długo, jak był on organizowany na Politechnice Opolskiej (niestety przeniesienie tej imprezy poza Uczelnię odcięło nas od naszego głównego celu – studentów). Za chwilę bierzmy udział w Wykładach Otwartych organizowanych przez Dział Współpracy i Rozwoju Politechniki Opolskiej. Pierwszego marca będziemy opowiadać o CODEFUSION i uchylać rąbka tajemnicy, co do naszych metod pracy. Chcemy, aby nasze wykłady były przydatne poczatkującym adeptom programowania. Dlatego tym razem opowiemy o systemach kontroli wersji, które stosujemy w naszej codziennej pracy. Serdecznie zapraszamy!

Microsoft R Server

Machine learning, data maining, big data, deep learning to tylko cztery hasła, które robią furorę w świecie, gdzie informacja jest królem. Okazuje się mianowicie, że mamy powoli więcej danych, niż jesteśmy w stanie przetrawić i to jest problem. Ale czy można to jakoś rozwiązać?

Jedną z naszych zasad w CODEFUSION jest to, że staramy się być na szpicy technologicznej. Nie inaczej jest też tutaj. Rozpoczęliśmy ambitny projekt związany z machnie learning, czyli uczeniem maszynowym. Ponieważ zawsze używamy odpowiednich narzędzi do odpowiednich celów, zaprzęgliśmy R i powoli stajemy się specjalistami w tej dziedzinie. R to bardzo popularny język i środowisko do obliczeń statystycznych, a w związku z tym, że pracujemy nad rozwiązaniem typu enterprise szybko okazało się, że potrzebujemy rozwiązania serwerowego. Cieszy nas to, że Microsoft jest tutaj na czele stawki. Najpierw wypróbowaliśmy świetną implementację chmurowa (AzureML), a teraz pracujemy na Microsoft R Server. Jeśli nazwa nie brzmi znajomo, to witamy w klubie. Microsoft R Server (w skrócie MSR) to stosunkowo młody członek rodziny Microsoft. Tym bardziej dziwi aktualna wersja MSR to 9.0. Okazuje się, że Microsoft R Server to nic innego, jak rebranding (i rewrite w Microsoft .NET Core) Revolution R Enterprise (z technologią deployR) dokonany po zakupie jej producenta Revolution Analytics przez Microsoft w styczniu 2015. Wpisuje się to w strategię Microsoftu mocno inwestującego w język R. W rodzinie jest już Microsoft R Open (bazujący na opensourcowej wersji R i kompatybilny na poziomie binarnym z wersją 3.3.2 dostępną na platformie dystrybucyjnej CRAN), czy R Tools for Visual Studio (upodobniający IDE Microsoftu do RStudio). Microsoft dodał do swojej platformy również biblioteki związane z obsługą swojego SQL Servera oraz przemianował deployR na Operationalization. Pod tą szumną nazwą kryje się mechanizm zamieniający skrypty R w serwisy webowe. Serwisy te dostępne są później poprzez Restowe API i mogą być konsumowane za pomocą biblioteki Swagger w dowolnych aplikacjach .NET Frameworka. Korzystamy z tych możliwości całymi garściami. O szczegółach projektu będziemy jeszcze informować!