Tag Archive : Google

W toku prowadzonych analiz, regularnie spotykam na etapie “zgłaszania wymagań biznesowych”, oczekiwania w rodzaju: “system ma pozwalać na wystawienie faktury na towar, którego nie ma w magazynie i pozwalać na ujemne stany magazynowe”, “system ma pozwalać na korygowanie treści historycznych dokumentów”, i wiele podobnych. To jest to co nazywam “łamanie praw fizyki w systemach”.

W zasadzie przyczyna takich żądań jest dość prosta: wielu ludzi lubi drogę na skróty, z powodów popełnianych błędów czy nawet nieuczciwości, chciało by zamazać historię albo np. móc kolejny raz oszukać. Takie “łamanie praw” pozostało by tylko “pobożnym życzeniem”, gdyby nie szkodnik w postaci programisty, który powie: ależ ja to bez problemu mogę oprogramować! Jak klient choć raz coś takiego usłyszy, to pojawia się feeria kolejnych podobnych życzeń! Jaki tego efekt? Ano lawina błędów logiki, kolejne wymagania “naprawiające” skutki poprzednich w rodzaju: ujemne stany magazynowe mają zostać bo są fajne, ale proszę dopisać jakieś reguły, żeby raporty magazynowe remanentowe nie pokazywały tego, bo wychodzą głupoty. I tak bez końca… a wdrożenie trwa i trwa i trwa….. jedna “fajna poprawka” i kolejne dziesiątki błędów (lub długie dni korekt wszystkich zależnych funkcji) w innych miejscach systemu.

Nie raz słyszę w firmach programistycznych, że “klient nasz Pan”, a gdy mówię, że to przecież nielogiczne i wywoła błędy w wielu innych miejscach (np. raporty  zawierające dane o ujemnych stanach magazynowych) słyszę: klient płaci to ma, za naprawianie błędów też płaci bo mamy kontrakt “czas i materiał”, i tu wygląda na to, że to ja jestem szkodnikiem, bo nie daję im zarobić, albo w innej sytuacji “czepiam się bo odrzucam  wymagania sponsora projektu”.

Czy to problem małych firm? Średnich? Niedoświadczonych? Czy to jest problem rzadki? Nie! To mega problem, bo takie zapędy mają nie tylko “pracownicy firm”, to zapędy polityków, wszelkich VIP-ów, całych korporacji, wręcz całego społeczeństwa. Co ciekawe, drugim po programistach szkodnikiem, są tu nie raz, o dziwo (mają na studiach logikę!), prawnicy. Dlaczego? Bo u tych obserwuję podobne ciągoty jak u programistów: “klient płaci, klient nasz pan, napiszemy taki paragraf”. W wielu przypadkach programiści i prawnicy to najemnicy, którzy wiedzą, że za takie “łamanie praw” zapłacą i tak ich klienci a nie oni, w końcu “klient sam chciał”, co niestety jest prawdą (ale tylko to, że chciał). Ale dlaczego klient nie dowiaduje się od nich  o ryzyku? A może dowiaduje się i ignoruje je?

 

Popatrzmy na to:

Kilka tygodni temu Europejski Trybunał zdecydował, że operatorzy wyszukiwarek muszą umożliwić Europejczykom możliwość wpływania na to, jakie informacje o nich prezentowane są w wynikach wyszukiwania. Google już dostosował się do tego orzeczenia i udostępnił użytkownikom stosowne narzędzie przez pierwsze trzy dni skorzystało z niego ponad 40 tys. osób, jednak decyzja trybunału wciąż budzi kontrowersje. Założyciel Wikipedii, Jimmy Wales nie owija w bawełnę ? jego zdaniem ?prawo do bycia zapomnianym? to po prostu cenzura. (Prawo do bycia zapomnianym czy zwykła cenzura? – Computerworld. 20.06.2014)

prawa-fizyki-w-kreskowkachI to właśnie nie jest nic innego, jak próba łamania praw fizyki. Jak rozumieć “możliwość wpływania na to, jakie informacje o nich prezentowane są w wynikach wyszukiwania”, skoro wyszukiwarka pokazuje (wcześniej opisane gdzieś) fakty , czyli “ma pamięć historii” (podobnie jak każdy człowiek).  Owszem, na pewno jest masa ludzi, chcących czyścić zapisy o swoich “dokonaniach” w przeszłości, ale to jest właśnie próba ingerencji w prawa fizyki (ingerencja w przeszłość, a w pamięć ludzi się da? Też nie.). Czy programista może? Owszem, podobnie jak twórcy kreskówek, może łamać prawa fizyki,  ale kreskówek nikt nie używa jako narzędzia pracy w realnym świecie a oprogramowania tak (choć podobno dzieci oglądające zbyt dużo kreskówek, doznają więcej obrażeń ciała podczas zabaw z rówieśnikami).

Czy to, żądania innych niż w rzeczywistości reguł, ma sens? Nie ma żadnego, bo nawet jeżeli prawnik zapisze w umowie lub ustawie, że “wolno latać machając szybko rękami”, nie zmienia to faktu, że “fizyka mówi, że się nie da” i nikt i tak tą metodą nie poleci. Pierwszy konflikt praw fizyki z programem lub zapisem umownym, wywołuje kolejne żądania  naprawy skutków konkretnego przypadku, co oczywiście w żaden sposób nie chroni przed kolejnymi wpadkami: lawina korekt i narastająca niedoskonałość aplikacji, treści umowy czy ustawy (tak wygląda np. nasze prawo!) tylko podnosi koszt całości.

Długo tu nie trzeba było czekać:

Decyzja Trybunału Sprawiedliwości UE o “prawie do zapomnienia internauty” przez Google przyjęta została entuzjastycznie. Wiadomo – prywatność rzecz święta. Ale jego wprowadzenie wywołało nieprzewidziane skutki [kto nie przewidział?? przyp. mój].

Jak informuje The Guardian, z wyników wyszukiwania przez Google znikają strony z artykułami i felietonami gazety. Teksty te zawierają nazwiska osób, które nie chcą być znalezione w sieci. Zarówno The Guardian, jak i BBC oraz Daily Mail otrzymały powiadomienie (poprzez Google Webmaster Tools) następującej treści: “Z przykrością zawiadamiamy, że z powodów prawnych nie możemy dłużej pokazywać następujących stron z waszej witryny:” – i tu następuje lista linków. (“Prawo do bycia zapomnianym” stwarza dziwne sytuacje. 04-07-2014)

praw-fizyki-pan-nie-zmienisz-i-nie-badz-pan-glabTak się właśnie kończy z góry przegrana walka z prawami fizyki. Teraz będzie już, z europejskim prawem, tylko coraz gorzej. Nie ma żadnej świętości. Nie chcesz się wstydzić? Nie rób rzeczy wstydliwych! To proste prawdy, proste i niezmienne jak prawa fizyki, walka z nimi jest możliwa tylko w kreskówkach a w oprogramowaniu tylko do czasu, gdy się ono nie zetknie z rzeczywistością i tu zawsze przegra z “prawami fizyki”.

prawa fizykiDlatego zbieranie wymagań tylko metodą spisywania oczekiwań czy wręcz żądań, użytkowników, jest jedną z najgorszych metod pozyskiwania wymagań! Praktycznie zawsze prowadzi do powstawania specyfikacji bardzo złej jakości (niespójne i niekompletne) oraz niekontrolowanego rozrastania się harmonogramu i budżetu projektu. Dostawcy oprogramowania, godzący się na taki styl prowadzenia projektu, świadomie lub nie, działają na szkodę swoich klientów. Analiza systemowa organizacji jako sposób pozyskania wymagań, który chroni przed takimi zjawiskami.

www-all-now-everything-for-free

Dlatego pamiętajcie Państwo, nie róbcie sobie krzywdy żądając zachowań systemu nieadekwatnych do rzeczywistości bo zawsze przegracie. Reguły biznesowe, to nic innego jak prawo organizacji, jeżeli będzie ono w zapisach kolidowało w prawami natury i logiką, przegracie. Niestety na Wasz koszt.

 

“Założyciel Wikipedii, Jimmy Wales nie owija w bawełnę ? jego zdaniem ?prawo do bycia zapomnianym? to po prostu cenzura”. I moim zdaniem ma trochę racji, ale to “prawo” to po protu próba “łamania praw fizyki”, historii nie zmieniamy…

W kwestii chciejstwa ludzi:

Amerykański koncern Google poinformował w czwartek, że w ciągu miesiąca otrzymał 70 tys. wniosków od europejskich użytkowników chcących usunięcia pewnych wyników podawanych przez jego wyszukiwarkę w ramach zagwarantowania “prawa do bycia zapomnianym” (Google otrzymał 70 tys. wniosków o ‘bycie zapomnianym’ – It).

Niestety realnie, w naturze, i tak nikt nie ma gwarantowanego “prawa do bycia zapomnianym”.

2014-11-94 Absurdy idą już jak lawina… Artysta chce, aby usunięto złą recenzję. Wszystko przez absurdalne unijne prawo | Gadżetomania.pl.

Temat cloud computing jest coraz gorętszy. Z jednej strony podgrzewają atmosferę firmy oferujące różne formy dzierżawy zasobów a z drugiej technologie i architektury zwane “chmurowymi”, prowadzą do stale malejących kosztów integracji (chmura prywatna).

Tak zwane technologie webowe (np. RESTful/REST API itp.) dotyczące integracji, powstały co  prawda już nawet w 2000 roku, jednak dopiero teraz można mówić o dostępnych, przetestowanych bibliotekach, czyniących tego rodzaju projekty tańszymi, np. omawiane w artykule “Wymagania pozafunkcjonalne ? integracja”  integracja z pomocą API to dzisiaj już taki sam koszt jak “spawanie” z pomocą SQL, wystarczy, że zatrudnimy kogoś (firmę) kto potrafi, a nie kogoś kto za nasze pieniądze będzie się dopiero zwinnie uczył, składając ofertę mimo braku kompetencji. Opór wielu firm przed przed tymi rozwiązaniami, z mojego doświadczenia, wynika z: braku wiedzy i kompetencji (wiele znanych firm IT nadal operuje metodami i technologiami z przed nawet 30 lat!), kurczowego trzymania się modelu biznesowego “dostarczamy jeden monolityczny system”, który silnie uzależnia klienta od dostawcy.

No i stosowanie metod opartych o tak zwane usługi “webservis”, wymaga całkowitego odejścia od metod strukturalnych projektowania (jednolite bazy danych w modelu relacyjnym i sterta funkcji) na rzecz metod obiektowych i komponentowych (Large system architecture).

Znamienne jest to, że gdy np. przeszukamy Internet pod kątem SOA, zobaczymy, iż w ostatnich kilku latach sporo publikacji poświęcono odejściu od tradycyjnego sposobu rozwoju systemów informatycznych ? od rozbudowanych rozwiązań autonomicznych do struktur złożonych z różnego rodzaju rozproszonych usług, ukierunkowanych na obsługę wybranych procesów biznesowych czy choćby pojedynczych działań. Równolegle, za Oceanem dynamicznie rozwija się Cloud Computing. Czymże innym jest to zjawisko, jak nie możliwością dobierania do organizacji (infrastruktury IT i modelu biznesowego) usług, które są niezbędne do efektywniejszej pracy (?do obsługi wybranych procesów biznesowych czy choćby pojedynczych działań?). I tak jak w ostatnich latach szyny integracyjne służyły integrowaniu wewnętrznej infrastruktury IT, tak w najbliższej przyszłości będą się rozwijać do łączenia również zewnętrznych usług z Chmury. (INTEGRACJA ROZWIĄZAŃ Z CHMURY TO WYZWANIE?).

Ja pisałem o tym już w 2011 roku (Biznes wychodzi ….).

Osobiście nie demonizował bym konieczności posiadania “szyny integracyjnej”, jak autorzy cytowanego powyżej artykułu (firma TIBCO jest dostawcą takiego produktu), jednak trend w kierunku rezygnacji z monolitycznych aplikacji już się zaznacza, a to czy taka “szyna” będzie, raczej jest konsekwencją architektury. Dobrze zaprojektowana architektura całego systemu aplikacji (komponentów) to struktura hierarchiczna: tak zwany “front end” to aplikacje, których odpowiedzialnością jest zarządzanie procesami, przepływem pracy (wprowadzanie danych i korzystanie z nich). Głębiej są dziedzinowe aplikacje stanowiące referencyjne składy i źródła danych. W takiej architekturze komunikacja (wywołania) jest jednostronna (zawsze mamy jasny podział usługobiorca-usługodawca. Szyny integracyjnej, jako dodatkowego komponentu, wymagają skomplikowane systemy i raczej dotyczy to większych korporacji, firmy naszego sektora MSP rzadko kiedy.

Internetowe metody integracji (np. wspomniany REST) to wymiana poleceń i obiektów a nie “funkcja vs. baza danych” (patrz wspomniany artykuł o integracji, dziwią mnie developerzy narzekający np. na “skomplikowane mapowanie obiektowo-relacyjne”, bo ono nie ma prawa być skomplikowane, a jeżeli jest, to jest to pierwszy sygnał, że to zły projekt!).

Tak więc chmury owszem, to chyba przyszłość, bez wnikania w to czy to chmury publiczne czy prywatne. Autonomiczne, duże systemy ERP? Nie wróżę im kariery, w obecnej postaci mega-aplikacje umrą, odwlekanie tej śmierci z pomocą perswazyjnych reklam i kampanii dużych korporacji i ich sprzedawców, to tylko sztuczne przedłużanie życia inwestycji w duże ERP, przez producentów tych rozwiązań, dawanie sobie czasu na (mam nadzieję) ich refaktoring. Mamy np. takie kolosy jak Google czy Amazon, które pokazują, że chmurowe, wysoce skalowalne architektury zasobowe mają sens. Systemy ERP oparte na relacyjnych bazach danych i ich wewnętrzna integracja poprzez współdzielenie danych, nie mają nawet szansy z tego skorzystać.