Prawo autorskie, szpiegostwo przemysłowe i projektowanie

Jak ustrzec się przed wyniesieniem z firmy tajemnicy jej funkcjonowania, tworzonej latami organizacji, procedur i procesów, reguł biznesowych? Jak zatrzymać w firmie wiedzę mino zamawiania oprogramowania, które siła rzeczy ja zawiera? Problem nie jest prosty. Sami prawnicy nie są między sobą zgodni co do tego, gdzie leży granica pomiędzy utworem literackim a szczegółowym opisem rozwiązania. Wydaje się, że kluczem jest to sposób tworzenia opisu tego co ma powstać. Standardem w IT jest opis wymagań, ten jednak z urzędu czyni autora oprogramowania także posiadaczem opisu logiki w nim zawartej, bo on jest autorem jej opisu. Wyjściem wydaje się zawarcie w umowie nie opisu wymagań na oprogramowanie a projektu oprogramowania. Metodą zdefiniowania granicy, za którą mamy nie utwór literacki (specyfikacje wymagań) a projekt wraz z algorytmami, jest metodyka MDA. Wtedy firma realizująca zamówione oprogramowanie tworzy dzieło zależne a zamawiający nie traci panowania nad tak powstałym produktem. Jest to sytuacja jaką znamy w branży budowlanej: developer dostaje projekt architektoniczny, i sam fakt, że postawił na jego podstawie obiekt nie daje mu żadnych praw do niego, gdyż wystarczająco szczegółowy projekt obiektu pozostaje dziełem projektanta a nie jego wykonawcy.

Jednak zawsze, bo nie ma złotej reguły, wymaga to konsultacji i szczegółowego określenia zawartości dokumentacji, która ma stać się “opisem przedmiotu zamówienia”.

Czytaj dalej Prawo autorskie, szpiegostwo przemysłowe i projektowanie

Analiza danych i podejmowanie decyzji: pięta achillesowa współczesnych organizacji

Warto tworzyć dobrze przemyślane systemy metadanych dla systemów archiwizacji gdyż pozwala to z jednej strony “spiąć” archiwum dokumentów z hurtownią danych z drugiej “pozbyć się” śmieci. Tempo przyrostu danych stale rośnie gdyż biznesowe oprogramowanie, automatyzując wiele naszych czynności, wytwarza je w tempie w jakim człowiek nigdy nie był by w stanie. Po drugie narasta zjawisko powielania, co nazywam to syndromem “copy&paste”. Wiele dokumentów (o zgrozo także tych podobno “autorskich”) i powstaje coraz częściej metodą powielania tego co znajdzie się w firmowych archiwach (wiedza korporacyjna czyli po prostu jej zanik, bo wiedza to umiejętność napisania czegoś a nie skopiowania) czy w sieci.
Moja praktyka (to co dostaje do audytu u klientów) pokazuje, że dokumenty wytworzone “od zera” praktycznie zawsze mają większą wartość merytoryczną. Do tego dochodzi ryzyko przeniesienia, podczas kopiowania, treści niechcianych. Kopiując dziesiątki stron “starej oferty” lub poprzedniego “opracowania doradczego”, tworząc kolejne “indywidualne autorskie opracowanie” narazić się można nie tylko na ujawnienie tajemnicy ale także na zwykłe ośmieszenie. Dlatego system zarządzania dokumentami i wiedzą należy dobrze zaprojektować. W przeciwnym wypadku narażamy się na budowę wielkiego śmietnika.

Czytaj dalej Analiza danych i podejmowanie decyzji: pięta achillesowa współczesnych organizacji

A jeżeli klient nie ma kompetencji do wykonania analizy

Opisywane tu nie raz metody bazujące na modelowaniu przyszłego systemu (jego logiki biznesowej) i testowaniu czy model pozwala na spełnienie celu biznesowego dają oszczędności nawet 50%, a bywa, że znacznie większe, jeśli okaże się, że uniknięto zakupu jakiegoś zbędnego oprogramowania lub modułu. Koszt dobrze opracowanej analizy z dużym zapasem pokrywają oszczędności wynikające z braku wielu prototypów.

Podsumowując: analityka zawsze warto zatrudnić, poprzedzając to kontrolą tego co wytworzy. Dobry analityk zawsze wyceni projekt jako umowę o dzieło o konkretnym terminie i koszcie. Projekty w rodzaju czas i materiał to projekty w rodzaju ” na początku nikt nic nie wie”. Warto je robić tylko w przypadkach, gdy tej wiedzy faktycznie nie ma, spodziewamy się systemu o wartości setek tysięcy złotych lub kosztowniejszych i zainwestowanie nawet kilkudziesięciu tysięcy w analizę, która pozwoli oszacować ryzyko wydania tych kilkuset, może mieć sens. W takich przypadkach i tak ustalamy próg kosztów, przy których uznamy, że dalsze prace już niczego nowego nie wniosą.

A na koniec, analiza trwająca kilka czy kilkanaście dni roboczych, zakończona kilkudziesięcioma stronami tekstu i tabelą na setki pozycji wymagań w niczym nam nie pomoże.

Czytaj dalej A jeżeli klient nie ma kompetencji do wykonania analizy

Większa elastyczność i lepsza obsługa klienta na szczycie listy życzeń użytkowników systemów ERP

Celem diagramów nie jest tylko rysowanie obrazków, to narzędzie analizy, które zmusza do zadawania właściwych pytań, właściwym osobom. Jako, że model BMM stanowi kompletny system pojęciowy, a przy okazji także ma swoją symboliczną wersję (notacja), pozwala tworzyć nieskomplikowane diagramy i skupić się na tym co ważne a po drugie pokazać system w sposób łatwy do weryfikacji i zrozumienia. Stworzenie spójnego tekstu na podstawie takiego diagramu jest już łatwe, w drugą stronę to niestety nie działa (łatwo jest słownie opisać skomplikowaną trasę wycieczki mając plan miasta w rękach, zrobienie tego na bazie wyobraźni jest dużo trudniejsze, jednak warto posiadać mapę).

Czytaj dalej Większa elastyczność i lepsza obsługa klienta na szczycie listy życzeń użytkowników systemów ERP

Ach ten wstrętny, wścibski analityk

Cóż, zastąpienie procesu analizy i projektowania werbalną komunikacją to droga na skróty: czerwona strzałka. Czy to zła droga? Droga na skróty to wspomniane na początku ryzyko, ogromne bo statystyki wskazują stale, że ok. 70-80% projektów programistycznych ma poważne kłopoty. Statystyki te są takie same od lat.

Od lat znany jest powyższy proces i mimo to zawsze jest te 80% klientów i ich dostawców, którzy dogadują się, że analiza i projektowania żadnemu z nich nie służy… tak jak to napisano na początku.

Po co to napisałem? By każdy z Państwa sam, świadomie, oceniał ryzyko swoich projektów. Rezygnacja z analizy i projektowania to podjęcie pewnego ryzyka, przez klienta. Niestety rezygnacja z analizy i projektowania ze strony dewelopera to czasem dodatkowo skutek uznania, że analiza i projektowanie leży poza kompetencjami programistów (Ci obiektowo kodują) wiec wybierają jest droga na skróty.

Czytaj dalej Ach ten wstrętny, wścibski analityk

Sprawna Inżynieria Oprogramowania: Ekstremalna obiektowość

W projektach informatycznych najczęściej spotykamy: analityka wymagań (AW), analityka systemowego (AS), dewelopera w tym architekta systemu (D). W zasadzie trudno powiedzieć co jest produktem każdego z nich. Najczęściej AW dostarcza jakiś opis tego czego oczekuje klient, AS robi porządkuje to zrobił AW np. z pomocą przypadków użycia a D bierze to do ręki i musi zaprojektować i wykonać oprogramowanie. Jak widać, odpowiedzialność za to co powstanie jest rozmyta. Klient najpierw przekazuje swoje oczekiwania AW zaś otrzymuje produkt od D. Konia z rzędem temu, kto mi powie jak tego dokonać bez permanentnych iteracyjnych wyjaśnień i bombardowania Klienta pytania w rodzaju “co Państwo mieli na myśli pisząc…”.

Czytaj dalej Sprawna Inżynieria Oprogramowania: Ekstremalna obiektowość

Raport Jama Sofware ? O wymaganiach

Twierdzenia, że nie da się inaczej, klienci nie wiedzą czego chcą, dokumenty tekstowe to jedyne możliwe opisy wymagań itp. są prostu nie prawdą, to usprawiedliwienia braku kompetencji albo zawyżania kosztów projektów (a raczej pokrywania braku kompetencji pieniędzmi z kieszeni klientów). Pewien znajomy, współwłaściciel pewnej firmy programistycznej, napisał mi niedawno: “korzyści z takiego dokumentowania wymagań są ogromne. Wykonawca, który potrafi pracować na modelach ma 2-3 krotnie niższe koszty i 1,5-4 krotnie krótszy czas wykonania. AMEN TO THIS:)” A co on miał na myśli?

Czytaj dalej Raport Jama Sofware ? O wymaganiach

Frameworks Introduction – czyli jak się psuje dobre ERP

Systemy zintegrowane ERP będą pewnymi zestawami gotowych funkcjonalności, zbudowanymi w oparciu o szkielety oprogramowania zaś integracja będzie bazowania nie na współdzieleniu danych a na wymianie ich pomiędzy modułami i zewnętrznymi systemami na równych prawach. Rozwój systemu w takim przypadku polega na tworzeniu nowych modułów tym środowisku a nie na modyfikacji już istniejących.

Tak więc co mogę poradzić? Bardzo dokładne przyglądanie się rozdziałom oferty pod tytułem Dostosowanie systemu, Koncepcja wdrożenia oraz ile oczekiwanych przez Państwa funkcjonalności to te, których system w swej wersji standardowej nie oferuje. Powinny one być po dokładnej analizie, zaprojektowane i zaimplementowane. Jeżeli Konsultanci zaczynają negocjować rezygnację z części oczekiwań lub oferują coś podobnego w systemie, to pierwszy sygnał, że powinien ktoś im zacząć patrzeć na ręce, i nie mam tu na myśli ich przełożonego.

Czytaj dalej Frameworks Introduction – czyli jak się psuje dobre ERP