Cyfrowa Transformacja a dziedzictwo IT

Wstęp

Transformacja cyfro­wa, jest przez dostaw­ców tech­no­lo­gii infor­ma­tycz­nych, naj­czę­ściej defi­nio­wa­na jako inte­gra­cja tech­no­lo­gii cyfro­wej z dzia­łal­no­ścią fir­my. Poniżej wybra­ne defi­ni­cje, któ­re naj­czę­ściej znaj­du­je­my w sieci:

Transformacja cyfro­wa defi­niu­je się jako inte­gra­cję tech­no­lo­gii cyfro­wej ze wszyst­ki­mi obsza­ra­mi funk­cjo­no­wa­nia fir­my. Dzięki niej moż­li­we jest wyko­rzy­sta­nie gro­ma­dzo­nych danych do two­rze­nia inno­wa­cyj­nych usług i posze­rze­nia dotych­cza­so­wej oferty.

Cyfrowa trans­for­ma­cja to nic inne­go jak inte­gra­cja tech­no­lo­gii cyfro­wej we wszyst­kich obsza­rach dzia­łal­no­ści fir­my oraz zmia­na spo­so­bu, w jaki dzia­łasz i zapew­niasz klien­tom war­tość. To tak­że zmia­na kul­tu­ro­wa, któ­ra wyma­ga od orga­ni­za­cji cią­głe­go rzu­ca­nia sobie wyzwań, eks­pe­ry­men­to­wa­nia, ale rów­nież godze­nia się z poraż­ką. Transformacja cyfro­wa jest pro­ce­sem nie­unik­nio­nym, nie­za­leż­nie od roz­mia­ru przedsiębiorstwa.

Transformacja cyfro­wa odno­si się do pro­ce­sów i stra­te­gii wyko­rzy­sta­nia tech­no­lo­gii cyfro­wej do rady­kal­nej zmia­ny spo­so­bów, w jakie przed­się­bior­stwa pro­wa­dzą dzia­łal­ność i obsłu­gu­ją klien­tów. Termin ten stał się w epo­ce cyfry­za­cji wszech­obec­ny. Spowodowane jest to tym, że każ­da orga­ni­za­cja ? nie­za­leż­nie od jej roz­mia­ru i bran­ży ? coraz bar­dziej opie­ra się na danych i tech­no­lo­gii, aby zwięk­szać wydaj­ność swo­jej dzia­łal­no­ści i zapew­niać war­tość swo­im klientom.

Ogólne idee wie­dzy jako fun­da­men­tu nowej gospo­dar­ki i infor­ma­cji jako naj­waż­niej­sze­go zaso­bu wypeł­nia­ją się tre­ścią i rodzą nowe poję­cia: smart devi­ces i weare­ables, Big Data, mobil­ność, chmu­ra obli­cze­nio­wa, plat­for­my spo­łecz­no­ścio­we, bio- i nano­tech­no­lo­gie, Internet of Things, ener­gia odna­wial­na czy sha­re economy?

Dominuje inte­gra­cja tech­no­lo­gii cyfro­wej z dzia­łal­no­ścią fir­my”. Osobiście jestem zwo­len­ni­kiem tezy, że nie tyle fir­my co gene­ral­nie czło­wie­ka. Czym jest tu sama inte­gra­cja tech­no­lo­gii z dzia­łal­no­ścią czło­wie­ka? Maszyny nie myślą, jed­nak prze­twa­rza­ją dane. Człowiek nada­je zna­cze­nie danym, potra­fi je tak­że prze­kształ­cać. Cyfrowa trans­for­ma­cja to pro­ces prze­no­sze­nia prze­twa­rza­nia danych z czło­wie­ka na maszy­ny: to już nie my ludzie wyszu­ku­je­my doku­men­ty w archi­wach, robi to elek­tro­nicz­ne archi­wum, nie my ludzie obsłu­gu­je­my klien­tów za ladą, coraz czę­ściej robi to Internetowy Sklep. Cyfrowa trans­for­ma­cja to wła­śnie pro­ces prze­no­sze­nia czę­ści pra­cy z czło­wie­ka na maszyny. 

Aby trans­for­ma­cja cyfro­wa była w ogó­le moż­li­wa, musi­my prze­nieść te dane (tre­ści, infor­ma­cje) z papie­ru do kom­pu­te­ra”, w spo­sób nie­nisz­czą­cy obec­nych moż­li­wo­ści i pozwa­la­ją­cy na two­rze­nie nowych. 

Trzeba też zni­we­lo­wać posia­da­ny dług tech­no­lo­gicz­ny. Dług tech­no­lo­gicz­ny to posia­da­ne dzie­dzic­two, to zapóź­nie­nie, to pozo­sta­wa­nie w tyle za trwa­ją­cym postę­pem tech­no­lo­gicz­nym. Dług taki ma bar­dzo wie­le firm. Co z nim zro­bić i jak z nie­go wyjść?

Czytaj dalej… Cyfrowa Transformacja a dzie­dzic­two IT”
Wzorce projektowe Książki

Wzorce projektowe w analizie i projektowaniu modelu dziedziny systemu

Analiza biz­ne­so­wa i projektowanie

Wstęp

W arty­ku­le o apli­ka­cjach webo­wych, ponad rok temu, pisałem:

Generalnie klu­czo­wą cechą micro-ser­wi­­sów, czy­nią­cą z nich tak zwa­ną zwin­ną archi­tek­tu­rę, jest cał­ko­wi­ta wza­jem­na nie­za­leż­ność imple­men­ta­cji poszcze­gól­nych usług apli­ka­cyj­nych. (źr.: Aplikacje webo­we i mikro­ser­wi­sy czy­li archi­tek­tu­ra sys­te­mów webo­wych).

Przy innej oka­zji pisa­łem o wzorcach:

Wzorce pro­jek­to­we to bar­dzo waż­na część ??zawo­du? ana­li­ty­ka i archi­tek­ta opro­gra­mo­wa­nia. […] Generalnie wzor­ce są to ska­ta­lo­go­wa­ne stan­dar­dy i dobre prak­ty­ki . (Obiektowe wzor­ce projektowe ) 

Szkolenia dla ana­li­ty­ków poprze­dzam ankie­ta­mi przed szko­le­nio­wy­mi, jak do tej pory żad­na nie zawie­ra­ła pytań o wzor­ce pro­jek­to­we: ani tego że są uży­wa­ne ani tego, że są celem szko­le­nia, nie­mal­że każ­dy dekla­ru­je albo, że uży­wa UML lub, że chce zacząć uży­wać UML, nawet gdy są to pro­gra­mi­ści. Zauważyłem, że wzor­ce pro­jek­to­we w świa­do­mo­ści ana­li­zy biz­ne­so­wej i pro­jek­to­wa­nia (OOAD) nie ist­nie­ją”. Wśród pro­gra­mi­stów, jeże­li jest spo­ty­ka­na, to wie­dza o wzor­cach przy­dat­nych w two­rze­niu biblio­tek i narzę­dzi, czę­sto też powie­la­ne są wyuczo­ne sta­re i złe prak­ty­ki pro­gra­mi­stycz­ne rodem z lat 60-tych (np. prak­ty­ki SmallTalk, patrz dalej). 

Z dru­giej stro­ny od wie­lu lat zna­ne są tech­ni­ki MDA (Model Driven Architecture) czy MBSE (Model Based System Engineering), któ­re w róż­nych for­mach, ale jed­nak wska­zu­ją, że naj­sku­tecz­niej­sza for­ma wyra­ża­nia wyma­gań wobec roz­wią­za­nia to pro­jekt archi­tek­tu­ry i logi­ki dzie­dzi­no­wej (model) dzia­ła­nia apli­ka­cji . O pro­jek­to­wa­niu poprze­dza­ją­cym imple­men­ta­cję pisze sie od dość daw­na, meto­dy obiek­to­we i dobre prak­ty­ki zna­ne są od lat .

Autorzy BABoK prak­tycz­nie od począt­ku ist­nie­nia tego wydaw­nic­twa, zwra­ca­ją uwa­gę na tak zwa­ną bia­łą skrzyn­kę”, czy­li wyma­ga­nia wyra­żo­ne w posta­ci wewnętrz­nej struk­tu­ry pro­duk­tu, wska­zu­jąc, że to znacz­nie sku­tecz­niej­sza meto­da defi­nio­wa­nia wyma­gań wobec roz­wią­za­nia, niż tak zwa­na czar­na skrzyn­ka”, czy­li tra­dy­cyj­ne, i jed­nak mniej sku­tecz­ne, wyma­ga­nia wyra­żo­ne tyl­ko jako cechy funk­cjo­nal­ne i poza-funk­cjo­nal­ne. Pamiętajmy, że adre­sa­tem wyma­gań jest zawsze dostaw­ca produktu!

Czytaj dalej… Wzorce pro­jek­to­we w ana­li­zie i pro­jek­to­wa­niu mode­lu dzie­dzi­ny sys­te­mu”

I jak to wszyst­kim poka­zać żeby było czytelne?

Wstęp

Niedawno napi­sał do mnie czy­tel­nik pod jed­nym z artykułów:

Załóż­my, że reali­zu­je­my pro­ces biz­ne­so­wy: zarzą­dza­nie kur­sa­mi walut. W ramach pro­ce­su pra­cow­nik musi przy­go­to­wać plik csv zawie­ra­ją­cy wyłącz­nie listę słow­ni­ko­wą par walut (np. usdpln, eurpln, eurusd). Nazwa pli­ku to np bie­żą­cą data. Następnie systemX łączy się z API zewnętrz­nej plat­for­my i pobie­ra tabe­le kur­sów tych par walut (aktu­al­ne i histo­rycz­ne mie­siąc wstecz) i wysta­wia plik xls zawie­ra­ją­cy dane: nazwa pary walut, data kur­su, war­tość kur­sy) Plik ten sys­tem X wysy­ła do szy­by ESB. Szyna prze­sy­ła ten plik do systemuY. SystemY wyko­rzy­stu­je te dane do wyzna­cze­nia wewnętrz­nych kur­sów walut wg. usta­lo­ne­go mode­lu mate­ma­tycz­ne­go. Wynik obli­czeń odkła­da­ny jest w bazie danych tego sys­te­mu. Na koń­cu pro­ce­su jest pra­cow­nik, któ­ry wyko­rzy­stu­je te infor­ma­cje za pośred­nic­twem SystemuZ. Wybiera parę walut, okre­śla datę i sys­tem zwra­ca mu wewnętrz­ny kurs wyzna­czo­ny przez SystemY. Technicznie odby­wa się poprzez odpy­ta­nie sys­te­mu Y poprzez jego API. Czyli mamy SystemX, SystemY, SystemZ, pra­cow­ni­ka, szy­nę, plik csv, plix xls, 2XAPI no i prze­pływ danych (naj­pierw pli­ków, potem poszcze­gól­nych atry­bu­tów) . I jak to wszyst­kim poka­zać żeby było czy­tel­ne? (źr.: : Model poję­cio­wy, model danych, model dzie­dzi­ny sys­te­mu)

Prawdę mówiąc, mniej wię­cej w takiej for­mie dosta­je mate­ria­ły od moich klien­tów.. ;). Co może­my zro­bić? Pomyślałem, że dobry repre­zen­ta­tyw­ny przy­kład. Popatrzmy…

Czytaj dalej… I jak to wszyst­kim poka­zać żeby było czy­tel­ne?”

Analiza nie musi być przedwdrożeniowa

Wprowadzenie

W ramach jed­ne­go z moich nie­daw­nych pro­jek­tów badaw­czych celem ana­li­zy nie było opra­co­wa­nie wyma­gań na opro­gra­mo­wa­nie (tego typu pro­jek­ty to naj­wy­żej ok. 70% mojej aktyw­no­ści) a roz­wią­za­nie pew­nych pro­ble­mów infor­ma­cyj­nych. Z uwa­gi na ochro­nę know-how klien­ta, opis ten został moc­no okro­jo­ny do isto­ty pro­ble­mu oraz meto­dy jego roz­wią­za­nia, nie ma tu z oczy­wi­stych powo­dów opi­su roz­wią­za­nia (ale waż­ne jest to, że roz­wią­za­nie zna­le­zio­no). Wartość jed­nak ma to, że czy­tel­nik może się tu odna­leźć i sam prze­ko­nać, co jest źró­dłem pew­nych pro­ble­mów, czy i jak moż­na je rozwiązać. 

W poniż­szym tek­ście poję­cie sys­tem odno­si sie do sys­te­mu doku­men­tów i for­mu­la­rzy czy­li do infor­ma­cji i zarzą­dza­nia nią. 

Czytaj dalej… Analiza nie musi być przed­wdro­że­nio­wa”

Struktury formularzy jako forma wyrażania wymagań

Wprowadzenie

Ten arty­kuł to uzu­peł­nie­nie opi­su: Dokument jako wyma­ga­nie.

Często jestem i ja pyta­ny o to Jak wyja­śnić zło­żo­ne roz­wią­za­nie tech­nicz­ne inte­re­sa­riu­szom nie­tech­nicz­nym?” Jak wie­lu mi podob­nych odpo­wia­dam: roz­ma­wiaj doku­men­ta­mi. Sponsor pro­jek­tu, przy­szli użyt­kow­ni­cy, postrze­ga­ją swo­ją pra­cę poprzez doku­men­ty: ich treść i układ. Zauważyli to tak­że inni:

A Mock-up is a sli­gh­tly glo­ri­fied pic­tu­re, so you will be answe­ring with at least 1001 words ! 

Bardzo czę­sto widu­ję wyma­ga­nia spi­sy­wa­ne jako tak zwa­na lista funk­cji lub funk­cjo­nal­no­ści. Pojęcia te mają takie defi­ni­cje w języ­ku polskim: 

funk­cja ?zada­nie, któ­re speł­nia lub ma speł­nić jakaś oso­ba lub rzecz?, ?moż­li­wość wyko­na­nia okre­ślo­nej ope­ra­cji przez urzą­dze­nie lub pro­gram komputerowy?

Funkcjonalność jest defi­nio­wa­na jako funk­cja cze­goś w jakimś systemie. 

Czytaj dalej… Struktury for­mu­la­rzy jako for­ma wyra­ża­nia wyma­gań”

Inżynieria oprogramowania z użyciem narzędzia CASE – przykładowy projekt Biblioteka

W dniu 11.12.2020, uda­ło mi się w koń­cu prze­pro­wa­dzić pre­zen­ta­cję on-line. Celem była pre­zen­ta­cja reali­za­cji meto­dy MBSE z narzę­dziem CASE (tu Visual-Paradigm) i jej efek­tów. Adresatem są zarów­no ana­li­ty­cy, archi­tek­ci opro­gra­mo­wa­na jak i deve­lo­per (pro­gra­mi­ści) jako osta­tecz­ny adre­sat doku­men­tu. Podobną pre­zen­ta­cję pro­wa­dzi­łem wcze­śniej na Konferencji beIT 2020. Popularność tych pre­zen­ta­cji spo­wo­do­wa­ła, że całość prze­ro­dzi­ła się w pro­jekt badawczy. 

Czytaj dalej… Inżynieria opro­gra­mo­wa­nia z uży­ciem narzę­dzia CASE – przy­kła­do­wy pro­jekt Biblioteka”