Teoria komunikacji, dżungla ram i szkieletów

Wpadła mi nie­daw­no w ręce książ­ka: How to survi­ve in the jun­gle of Enterpice Architecture Frameworks (autor Jaap Schekkerman, na Amazon​.com dostęp­ny frag­ment w tym spis treści).

Dla mnie po lek­tu­rze tej książ­ki nasu­wa się jeden wnio­sek: moda na TOGAF to mar­ke­ting The Open Group. Są inne, moim zda­niem ani gor­sze ani lep­sze, ramy” archi­tek­to­nicz­ne (książ­ka opi­su­je ich wie­le). Podtytuł książ­ki mówi wie­le: Creating or cho­osing an Enterprise Architecture Framework (Tworzenie lub wybór ram archi­tek­tu­ry kor­po­ra­cyj­nej). W zasa­dzie wystar­czy wziąć przy­ta­cza­ną powy­żej defi­ni­cję AE i pod­jąć powyż­szą decy­zję: stwo­rzyć lub wybrać. Nie jest to – two­rze­nie – łatwe, więk­szość więc wybie­ra goto­we, jed­nak to jedy­nie ramy dla­te­go i tak nie da się tu nicze­go zasto­so­wać jak recepty.

Czytaj dalej Teoria komunikacji, dżungla ram i szkieletów

Czym zajmuje się ustawodawca w IT

Obecne usta­wy idą w kie­run­ku usta­la­nia meto­dy pro­jek­to­wa­nia sys­te­mów tele­in­for­ma­tycz­nych, opi­sy­wa­nia ich szcze­gó­łów, metod powsta­wa­nia. Po co na pozio­mie usta­wy defi­nio­wać np. poję­cie mini­mal­nych wyma­gań sko­ro nie zde­fi­nio­wa­no tego mini­mum? To już ele­men­ty meto­dy­ki spe­cy­fi­ko­wa­na i two­rze­nia opro­gra­mo­wa­nia. Znacznie lepiej by było, gdy­by powstał doku­ment będą­cy np. meto­dy­ką dla pro­jek­tów finan­so­wa­nych ze środ­ków publicz­nych. Po co two­rzyć usta­wo­wy pro­ces two­rze­nia sys­te­mów teleinformatycznych?

Wydaje mi się, że stwier­dze­nie czy jaki­kol­wiek doku­ment speł­nia usta­wo­we mini­mal­ne wyma­ga­nia dla sys­te­mu tele­in­for­ma­tycz­ne­go” jest nie­moż­li­we bo jak? Jakim testem? Co mia­ło by być wzor­cem dla audytu?

Ma jed­nak sens moim zda­niem, by wyma­ga­nia na sys­te­my były doku­men­to­wa­ne w posta­ci testów akcep­ta­cyj­nych. Te są wymier­ne i zero­je­dyn­ko­we”. Nie uda­wa­ło­by się praw­ni­kom dostaw­ców opro­gra­mo­wa­nia wyka­zy­wać zgod­no­ści dostar­czo­ne­go opro­gra­mo­wa­nia z wyma­ga­nia­mi w posta­ci OPZ (Opis Przedmiotu Zamówienia) w brzmie­niu np. sys­tem ma być wygod­ny w uży­ciu” bo każ­dy go jakoś tam jest wygod­ny. Należało by w dro­dze takich testów stwier­dzić, czy opro­gra­mo­wa­nie daje pożą­da­ne efek­ty. Tu nie będzie pola do popi­su dla inter­pre­ta­cji praw­nych, czę­sto nie­jed­no­znacz­nych zapi­sów w OPZ-tach.

I na koniec: usta­wo­daw­ca w moich oczach wyka­zu­je, że nie ma kom­pe­ten­cji by two­rzyć pra­wo. Zamiast two­rzyć regu­ły, zaczy­na opi­sy­wać kon­kret­ne meto­dy ich reali­za­cji a to zły kie­ru­nek. Po dru­gie te zbyt szcze­gó­ło­we regu­la­cje w usta­wach wyglą­da­ją czę­sto na efek­ty złe­go lob­bin­gu dostaw­ców tech­no­lo­gii. Może war­to, by przy rzą­dzie powstał jakiś THINK TANK ukie­run­ko­wa­ny na sys­te­mo­we, cało­ścio­we podej­ście do IT w admi­ni­stra­cji publicz­nej. Myślę, że Analiza Systemowa i [[Architektura Korporacyjna]], jako cało­ścio­we podej­ście, a nie lokal­ne w poszcze­gól­nych urzę­dach, jest na to spo­so­bem. Niestety chy­ba nie mamy w rzą­dzie kom­pe­tent­nych ludzi…

Czytaj dalej Czym zajmuje się ustawodawca w IT

Mega projekty czyli jak zjeść słonia

Uszczegóławianie wyma­gań odkła­da­my na ostat­ni moment”. W ten spo­sób kwar­tał po kwar­ta­le” dopre­cy­zo­wu­je­my wyma­ga­nia na kolej­ny etap i reali­zu­je­my go. Co zysku­je­my? Nie wyrzu­ca­my do kosza nad­mier­nie szcze­gó­ło­wej i roz­le­głej doku­men­ta­cji wyma­gań, nie pono­si­my koszów pro­jek­to­wa­nia cze­goś co może wyle­cieć” z zakre­su za pół roku z powo­dów np. zmian na ryn­ku, może­my w dowol­nym momen­cie zmie­nić kolej­ne pla­no­wa­ne kom­po­nen­ty, usu­nąć jed­ne i opra­co­wać nowe bez ryzy­ka zbęd­nych kosztów.

Pierwszy etap ma pew­ną cechę: two­rzy jeden wspól­ny model wszyst­kich pro­jek­tów dla danej orga­ni­za­cji o wdzięcz­nej nazwie Architektura Korporacyjna. Kolejne kon­kret­ne kom­po­nen­ty archi­tek­tu­ry IT to kolej­ne pro­jek­ty, cechu­ją­ce się umiej­sco­wie­niem w cało­ści orga­ni­za­cji i wia­ry­god­nym, spój­nym z cało­ścią zakresem.

Dlatego z regu­ły nie mają sensu:

wdro­że­nia depar­ta­men­to­we ode­rwa­ne od resz­ty (np. Dział Handlowy sobie fun­du­je sam sys­tem CRM),
pro­jek­ty trwa­ją­ce dłu­żej niż trzy kwar­ta­ły (ostat­ni kwar­tał to kolej­ne pla­no­wa­nie budże­tu na kolej­ny rok czy­li pla­no­wa­nie zmian),
mega pro­jek­ty ERPII czy­li all in one” dla fir­my w ramach jed­ne­go projektu.
Więc jak zjeść sło­nia by się nie udła­wić? Powoli i po kawałku…

Czytaj dalej Mega projekty czyli jak zjeść słonia

TOGAF or not TOGAF więc może Zachman

Badanie przydatności TOGAF/ArchiMate mam chyba za sobą (zapewne nie na miarę doktoratu ale troszkę jednak tak, chociaż...;)).  Na stronie mojego kolegi: ArchitekturaKorporacyjna.pl (polecam analitykom),  w jednym z artykułów pojawia się ciekawe stwierdzenie:…

Czytaj dalej TOGAF or not TOGAF więc może Zachman

Wzorzec analityczny Boundary Control Entity i ICONIX a także MVC i MVVM

Opisywałem ostat­nio wzo­rzec DDD jako narzę­dzie doku­men­to­wa­nia ana­li­zy. Faktycznie, czy­tel­ni­cy mają wie­le racji, jest on dość bli­ski imple­men­ta­cji”. Niejednokrotnie lep­szym pomy­słem” jest opis logi­ki sys­te­mu na nie­co wyż­szym pozio­mie abs­trak­cji pozo­sta­wia­jąc tym samym wię­cej swo­bo­dy deve­lo­pe­ro­wi. […] Nieco inne podej­ście, to któ­re sto­su­ję obec­nie, opi­su­ję poni­żej. Zachowując pod­sta­wo­we zna­cze­nia tych trzech klas, dosto­so­wa­łem je do wzor­ca MVVC. Jest to o tyle wygod­ne i waż­ne, że sto­so­wa­nie wzor­ca BCE wyłącz­nie do mode­lo­wa­nia logi­ki biz­ne­so­wej wyma­ga zacho­wa­nia her­me­ty­za­cji kom­po­nen­tu Model. W takim ukła­dzie boun­da­ry nie będzie ele­men­tem kom­po­nen­tu View a Modelu. Jego rola to stwo­rze­nie dedy­ko­wa­ne­go inter­fej­su do model np. pomię­dzy kom­po­nen­tem View lub Controlerem. Dzięki temu moż­li­we jest stwo­rze­nie odręb­ne­go inter­fej­su dla View na duży ekran i odręb­ne­go dla View na np. małych ekra­nach smart­fo­nów. Tak więc jest moim zda­niem dro­ga do mode­lo­wa­nia wyma­gań meto­dą tak to ma dzia­łać” a nie tyl­ko tak to ma wyglą­dać”, bo to dru­gie jest przy­czy­ną wie­lu problemów…

Czytaj dalej Wzorzec analityczny Boundary Control Entity i ICONIX a także MVC i MVVM

RE: Duży monolityczny ERP czy integracja

Pojawiła się polemika do mojego artykułu  Duży monolityczny ERP czy integracja (fragment, gorąco polecam cały wpis): Witam Kolegę Blogera i na powitanie mam małą polemikę. Otóż nie mogę się zgodzić na…

Czytaj dalej RE: Duży monolityczny ERP czy integracja

Czym jest jakość oprogramowania… a może od czego ona zależy?

Coraz czę­ściej utoż­sa­miam ana­li­zę z pro­jek­tem gdyż w sumie pro­duk­tem ana­li­zy jest jakiś pro­jekt czy­li model tego co ana­li­zo­wa­no, model tego co reko­men­du­ję by powsta­ło. Analiza sama z sie­bie nie jest samo­wy­star­czal­na (to zna­czy samo ana­li­zo­wa­nie nie jest war­to­ścio­wym pro­duk­tem samym w sobie). Problemy z pro­jek­ta­mi obser­wu­je nie ja jeden. W każ­dym kolej­nym pro­jek­cie sta­ram się szu­kać przy­czyn, zro­zu­mieć pro­blem i pod­jąć pró­bę roz­wią­za­nia. Problem w zasa­dzie jest zna­ny. […] Dalej mamy same dobre rady, z któ­ry­mi trud­no polemizować:

Wysoka modu­lar­ność, współ­pra­ca wie­lu nie­za­leż­nych, lub luź­no powią­za­nych ele­men­tów, moż­li­wość wymia­ny małych czę­ści, lub two­rze­nie róż­nych warian­tów tego same­go modu­łu, to podej­ścia, któ­re przy­nio­są nam war­tość doda­ną. Ludzie mają­cy do czy­nie­nia z mono­li­ta­mi (układ: jed­na wiel­ka baza danych i do tego wiel­ki ser­wer apli­ka­cyj­ny) z regu­ły postrze­ga­ją podej­ście roz­pro­szo­ne (dzie­siąt­ki lub set­ki małych kawał­ków fru­wa­ją­cych gdzieś w koło) jako trud­niej­sze, bar­dziej skom­pli­ko­wa­ne i przez to gor­sze i bar­dziej ryzy­kow­ne. Takie spoj­rze­nie to posta­wie­nie spra­wy do góry nogami.

I tu moim zda­niem autor ma 100% racji. Nie ma chy­ba nic gor­sze­go niż uzna­nie, że jeden wiel­ki zin­te­gro­wa­ny sys­tem” to zale­ta tego Systemu, jest to jego naj­więk­sza wada. 

Czytaj dalej Czym jest jakość oprogramowania… a może od czego ona zależy?