Dziesięć lat temu pisa­łem o infor­ma­cji i jej struk­tu­ral­nym cha­rak­te­rze, wpis koń­czył się zdaniem:

czym więc jest Zarządzanie Wiedzą (mil­czą­co zakła­dam, że zarzą­dzać moż­na czymś mate­rial­nym)? Jest to ?prze­cho­wy­wa­nie danych jed­no­znacz­nie zro­zu­mia­łych, opi­su­ją­cych okre­ślo­ne i ogra­ni­czo­ne licz­bą fak­ty inter­pre­to­wa­ne jako poj­mo­wal­na przez adre­sa­ta informacja?.Przemyślenia zwią­za­ne z tą ostat­nią defi­ni­cją pozo­sta­wiam Państwu. Ciąg dal­szy może nastą­pi? (źr. : Potrzeby infor­ma­cyj­ne fir­my ? Zarządzanie wie­dzą | Jarosław Żeliński IT-Consulting) 

Kontynuacją cyto­wa­ne­go tek­stu będzie dzi­siaj kwe­stia infor­ma­cji i powią­za­nych z nią wyma­gań na opro­gra­mo­wa­nie. Każdy pro­jekt wytwo­rze­nia, lub nawet tyl­ko dostar­cze­nia goto­we­go, opro­gra­mo­wa­nia powi­nien mieć co naj­mniej dwie war­stwy opi­su: (1) co chce­my stwo­rzyć i (2) jak to chce­my stwo­rzyć. Pierwsza to tak zwa­na war­stwa abs­trak­cyj­na opi­su­ją­ca mecha­nizm funk­cjo­no­wa­nia sys­te­mu. Druga to logicz­na archi­tek­tu­ra sys­te­mu czy­li pomysł na reali­za­cję (model Platform Independent). Na pod­sta­wie mode­lu PIM deve­lo­per pro­jek­tu­je opro­gra­mo­wa­nie, któ­re wyko­na (Platform Specific Model). Jednak czę­sto dostaw­ca ist­nie­ją­ce­go opro­gra­mo­wa­nia chce porów­nać logi­kę opro­gra­mo­wa­nia, któ­re ofe­ru­je, z logi­ką opi­sa­ną jako wyma­ga­ną. Tu potrzeb­ny jest nie model archi­tek­tu­ry PIM a model infor­ma­cyj­ny opi­su­ją­cy logi­kę biz­ne­so­wą ale nie narzu­ca­ją­cy archi­tek­tu­ry (bo ta już istnieje).

Bardzo czę­sto głów­nym celem biz­ne­so­wym, i zara­zem wyma­ga­niem, jest zarzą­dza­nie infor­ma­cją czy­li skoń­czo­ną licz­bą typów doku­men­tów o usta­lo­nej (lub wyma­ga­ją­cej usta­le­nia) tre­ści i struk­tu­rze. Niestety czę­sto jest tak, że struk­tu­ra doku­men­tów ule­ga pew­nym zmia­nom przy zacho­wa­niu głów­ne­go celu dla jakie­go powsta­ły, co utrud­nia zada­nie ale nie jest praw­dę, że jest to powód do per­ma­nent­ne­go mody­fi­ko­wa­nia opro­gra­mo­wa­nia. Odporność (goto­wość) apli­ka­cji na zmien­ność tre­ści jest tu wyma­ga­niem i sys­tem powi­nien sobie z tym poradzić.

W takich przy­pad­kach mode­lu­jąc sys­tem war­to sku­pić się wyłącz­nie na infor­ma­cji i na tym jak jest ona zarzą­dza­na, pozo­sta­wia­jąc pew­ne deta­le archi­tek­tu­ry dostaw­cy, któ­ry z zasa­dy – jako deve­lo­per – dys­po­nu­je więk­szą wie­dzą o dostęp­nych na ryn­ku tech­no­lo­giach i narzę­dziach. W takich przy­pad­kach war­to opra­co­wać tak zwa­ny model infor­ma­cyj­ny. Nie jest on jed­nak ani bazą danych ani mode­lem dzie­dzi­ny (przy­po­mi­nam, że obiek­to­wy model dzie­dzi­ny to kom­po­nent archi­tek­to­nicz­ny wzor­ca MVC). Jest to model związ­ków logicz­nych mię­dzy doku­men­ta­mi opi­su­ją­cy mecha­ni­zmy korzy­sta­nia z nich.

O informacji

Kluczowymi poję­cia­mi w tym obsza­rze ana­liz są: nośnik, doku­ment, infor­ma­cja, treść, dane, wia­do­mość, któ­re moż­na zobra­zo­wać w posta­ci związ­ków poję­cio­wych (dia­gram fak­tów SBVR):

Dokument elek­tro­nicz­ny (obec­ny jako poję­cie od kil­ku lat w pol­skim pra­wie) jest defi­nio­wa­ny jako
sta­no­wią­cy odręb­ną całość zna­cze­nio­wą zbiór danych upo­rząd­ko­wa­nych w okre­ślo­nej struk­tu­rze wewnętrz­nej i zapi­sa­ny na infor­ma­tycz­nym nośni­ku danych (na pod­sta­wie usta­wy KPA1 i SJP PWN). Innymi sło­wy: doku­ment elek­tro­nicz­ny to (upo­rząd­ko­wa­ne) infor­ma­cje zapi­sa­ne na elek­tro­nicz­nym nośni­ku, jed­nak nośni­kiem może być nadal np. papier, więc gene­ral­nie pod poję­ciem doku­ment moż­na (nale­ży) rozu­mieć utrwa­lo­ną odręb­ną całość zna­cze­nio­wą, zbiór danych upo­rząd­ko­wa­nych w okre­ślo­nej struk­tu­rze wewnętrz­nej”. Skoro odręb­ną, to tak­że mają­cą uni­kal­ną nazwę, bez cze­go nie­moż­li­we było by odwo­ła­nie się do takie­go doku­men­tu. Kolejna waż­na rzecz: zna­cze­nie i struk­tu­ra. Strukturę doku­men­tu okre­śla jego sza­blon, treść zaś to to co zosta­nie zapi­sa­ne z uży­ciem tego sza­blo­nu. Przykład: sło­wo fak­tu­ra ozna­cza obo­wią­zu­ją­cy sza­blon doku­men­tu mogą­ce­go, po wypeł­nie­niu, zawie­rać infor­ma­cje o tym, kto, komu, co, kie­dy i za jaką kwo­tę sprzedał.

Generalnie infor­ma­cje są orga­ni­zo­wa­ne w nazwa­ne struk­tu­ry czy­li doku­men­ty. Tu waż­na uwa­ga: ludzie w pro­ce­sie komu­ni­ka­cji zawsze ope­ru­ją infor­ma­cją o okre­ślo­nej struk­tu­rze, bywa, że jest ona – struk­tu­ra – pro­sta, struk­tu­rą jest tak­że podział wymia­ny infor­ma­cji na odręb­ne komu­ni­ka­ty, gdzie jeden komu­ni­kat to jed­no pole for­mu­la­rza”. Nie zmie­nia to fak­tu, że taki komu­ni­kat to struk­tu­ra zawie­ra­ją­ca auto­ra i nadaw­cę komu­ni­ka­tu, odbior­cę komu­ni­ka­tu oraz jego treść, jest to for­mu­larz – struk­tu­ra – jaką widzi­my pisząc np. kolej­ne­go maila.

W efek­cie moż­na przy­jąć, że wszel­kie infor­ma­cje w orga­ni­za­cjach są zor­ga­ni­zo­wa­ne z uży­ciem okre­ślo­nej licz­by for­mu­la­rzy, z któ­rych każ­dy ma okre­ślo­ną struk­tu­rę. Struktury te nazy­wa­my sza­blo­na­mi doku­men­tów (for­mu­la­rzy). Nie jest nie­ste­ty praw­dą, że infor­ma­cje są zor­ga­ni­zo­wa­ne w bazach danych rozu­mia­nych jako sys­tem rela­cyj­nych tablic. Model rela­cyj­ny jest nie­na­tu­ral­ny i strat­ny. Człowiek nie jest w sta­nie korzy­stać z nie­go wprost, jest to tyl­ko jakaś tech­no­lo­gicz­na meto­da zapi­su danych.

Model informacyjny organizacji

W związ­ku z tym, mamy pra­wo uznać, że wszyst­kie infor­ma­cje w fir­mie są zor­ga­ni­zo­wa­ne w uży­ciem skoń­czo­nej licz­by struk­tur i nie są to struk­tu­ry zna­ne z rela­cyj­nych baz danych, są to odręb­ne i nie­po­łą­czo­ne (nie­współ­dzie­lą­ce danych) for­mu­la­rze, czy­li po pro­stu odręb­ne doku­men­ty. Formularze te mogą być jaw­nie logicz­nie sko­ja­rzo­ne np. na fak­tu­rach są nano­szo­ne nume­ry zamó­wień. Mogą być sko­ja­rzo­ne nie wprost, z uży­ciem okre­ślo­nych reguł np. poda­tek za dany mie­siąc nali­cza­my na pod­sta­wie fak­tur wysta­wio­nych w tym mie­sią­cu albo dany refe­rent ma dostęp do doku­men­tu, jeże­li ten zwią­za­ny jest ze spra­wą aktu­al­nie przy­dzie­lo­ną temu refe­ren­to­wi. Ostatni przy­kład to typo­we dyna­micz­ne powią­za­nie gdyż przy­dział refe­ren­ta do spra­wy, a więc tak­że doku­men­tów z nią powią­za­nych, może ule­gać zmia­nie w czasie.

Formularze te, ich zawar­tość oraz logi­ka powią­zań pomię­dzy nimi, to sys­tem infor­ma­cyj­ny orga­ni­za­cji. Każda orga­ni­za­cja cechu­je się wła­snym, indy­wi­du­al­nym sys­tem infor­ma­cyj­nym, gdyż tyl­ko część doku­men­tów ma z góry narzu­co­ną struk­tu­rę np. pra­wem lub stan­dar­dem bran­żo­wym. Reszta, struk­tu­ra wewnętrz­nych doku­men­tów, to decy­zje wewnętrz­ne organizacji.

Postrzegam jako poważ­ny błąd uzna­nie, że model infor­ma­cyj­ny to jed­no­li­ta rela­cyj­na struk­tu­ra danych (pojęć) podob­na do (budo­wa­na na wzór) onto­lo­gii2. Po pierw­sze rela­cyj­ny model danych prze­cho­wu­je nie doku­men­ty a poję­cia, uzna­jąc związ­ki mię­dzy poję­cia­mi za sta­łe rela­cje (co nie zawsze jest praw­dą). Po dru­gie usu­wa­nie redun­dan­cji w pro­ce­sie zapi­su danych z for­mu­la­rzy wyma­ga ich odtwo­rze­nia przy każ­dej pró­bie odtwo­rze­nia kon­kret­ne­go doku­men­tu. Tak więc taka rela­cyj­na baza danych nie prze­cho­wu­je żad­nych doku­men­tów a jedy­nie zbiór trwa­le powią­za­nych pojęć. Bardzo czę­sto mówi się, że infor­ma­cje i wie­dza to onto­lo­gia. Niestety tak nie jest, onto­lo­gia to sys­tem pojęć powią­za­nych związ­ka­mi seman­tycz­ny­mi, sta­no­wi opis języ­ko­wa ale nie jest to wie­dza o świe­cie a wie­dza o języku.

Generalnie uwa­żam, że nie jest infor­ma­cją poję­cie, jego defi­ni­cja i seman­tycz­ne powią­za­nie z innym poję­ciem. To tyko model syn­tak­ty­ka i seman­ty­ka pojęć. Faktura zaś to zbiór pojęć mają­cych okre­ślo­ną struk­tu­rę i treść, war­tość ma to – wie­dza – kto, co kie­dy i od kogo kupił, a nie to co zna­czy sło­wo pro­dukt czy nabyw­ca i jak jest seman­tycz­nie on powią­za­ny z poję­ciem sprze­daw­ca. To co naj­wy­żej pozwo­li nam zro­zu­mieć jaką treść zawie­ra faktura.

Kolejną wadą podej­ścia rela­cyj­ne­go jest to, że baza taka sta­no­wi nie­po­dziel­ny mono­lit, w efek­cie to co jest moż­li­we w rze­czy­wi­sto­ści (np. pra­ca z fak­tu­rą w cał­ko­wi­tym ode­rwa­niu od odpo­wia­da­ją­cych jej zamó­wień) jest nie­moż­li­we w sys­te­mie rela­cyj­nym. Usuwanie redun­dan­cji powo­du­je tak­że powsta­wa­nie duże­go narzu­tu na zarzą­dza­nie histo­rią zmian pól baz danych, co nie ma miej­sca w rze­czy­wi­stych doku­men­tach (kar­to­te­ka klien­ta zawie­ra wyłącz­nie aktu­al­ne dane adre­so­we, histo­rycz­ne są dostęp­ne w histo­rycz­nych doku­men­tach, np. aktu­al­ne dane adre­so­we klien­ta są w jego kar­to­te­ce, jego adres z ubie­głe­go roku znaj­dzie­my na doku­men­tach wysta­wio­nych temu klien­to­wi w ubie­głym roku).

Rok temu pisa­łem przy podob­nej okazji:

war­to zauwa­żyć, że zmien­ność śro­do­wi­ska biz­ne­so­we­go powo­du­je, że żad­ne decy­zje o logi­ce biz­ne­so­wej nie są osta­tecz­ne, jed­nak są ele­men­ty nie­zmien­ne takie jak np. nasze dane oso­bo­we. Tak więc to, co powszech­nie nazy­wa­ne jest ?mode­lem danych? (busi­ness data dia­gram) w rozu­mie­niu opi­sa­nym przez autor­ki arty­ku­łu, nie ma racji bytu. Ma sens zacho­wa­nie zamó­wie­nia i osob­no fak­tu­ry, ale to czy regu­łą jest jed­no zamó­wie­nie do jed­nej fak­tu­ry, pod­le­ga zmia­nom wyni­ka­ją­cym i ze zmien­no­ści pra­wa i ze zmien­no­ści mode­li biz­ne­so­wych. Nie widzę żad­ne­go powo­du dekla­ro­wa­nia już na począt­ku pro­jek­tu, tego by nie wię­cej niż 5 osób mogło korzy­stać z jed­ne­go kon­ta i sub­skryp­cji. W szcze­gól­no­ści nie widzę powo­du by taka zasa­da była zawar­ta w samym kodzie apli­ka­cji. (źr. : Biznesowy model danych ? nie chce­my | | Jarosław Żeliński IT-Consulting).

Problemy jakie wno­si do pro­jek­tu opar­cie się na jed­nym rela­cyj­nym mode­lu danych dla całej apli­ka­cji, są zna­ne od lat:

(źr. Designing Objects Systems, Steve Cook, John Daniels, 1994 rok.)

a mimo to nadal jest on sto­so­wa­ny w spo­sób sta­no­wią­cy zagro­że­nie dla całe­go projektu.

Czym więc jest model infor­ma­cyj­ny orga­ni­za­cji? Jest to sys­tem sza­blo­nów doku­men­tów czy­li usta­lo­nych struk­tur infor­ma­cyj­nych wraz z logi­ką ich wza­jem­nych powią­zań czy­li aso­cja­cji, świa­do­mie uni­kam poję­cia rela­cji. Relacja to trwa­ły zwią­zek, zaś aso­cja­cja to sko­ja­rze­nie budo­wa­ne na bazie okre­ślo­nej logi­ki czy zacho­dzą­ce­go fak­tu. Przykład: fak­tu­ra sko­ja­rzo­na jest z oso­bą, któ­ra doko­na­ła sprze­da­ży, jed­nak w momen­cie gdy upły­nie ter­min waż­no­ści i fak­tu­ra nie jest opła­co­na, jest ona auto­ma­tycz­nie koja­rzo­na z win­dy­ka­to­rem i sprze­daw­ca prze­sta­je być za nią odpo­wie­dzial­ny (być może nawet tra­ci dostęp do jej tre­ści, zgod­nie z zasa­dą bez­pie­czeń­stwa mówią­cą, że pra­cow­ni­cy mają dostęp wyłącz­nie do infor­ma­cji potrzeb­nej do reali­zo­wa­nia ich bie­żą­cych zadań i obo­wiąz­ków).

Jak podejść do opra­co­wa­nia i udo­ku­men­to­wa­nia sys­te­mu infor­ma­cyj­ne­go, czy­li jak wyko­nać jego model? Pierwszy krok to ziden­ty­fi­ko­wa­nie doku­men­tów. Podstawą będzie tu ana­li­za pro­ce­sów biz­ne­so­wych i opra­co­wa­nie ich mode­li. Elementarny (ato­mo­wy) pro­ces biz­ne­so­wy to aktyw­ność mają­ca wej­ście i wyj­ście, a kon­kret­nie dane wej­ścio­we i dane, któ­ry powsta­ją jako pro­dukt tej aktyw­no­ści. Te dane to nic inne­go jak infor­ma­cje o okre­ślo­nej struk­tu­rze. Oznacza to, że na mode­lu pro­ce­sów (tu w nota­cji BPMN) każ­da aktyw­ność musi mieć sko­ja­rzo­ny doku­ment wej­ścio­wy i wyj­ścio­wy (ele­ment o nazwie DataObect w nora­cji BPMN), w prze­ciw­nym razie taka aktyw­ność nie powin­na się poja­wić na modelu.

Powyższy dia­gram zawie­ra mode­le dwóch odręb­nych pro­ce­sów: obsłu­ga zapy­tań ofer­to­wych oraz obsłu­ga zamó­wień. Oba dia­gra­my to naj­niż­szy poziom mode­lo­wa­nia pro­ce­sów, poziom ele­men­tar­nych (ato­mo­wych) pro­ce­sów biz­ne­so­wych. Pozwala ziden­ty­fi­ko­wać wszyst­kie doku­men­ty i ich statusy.

Tu mała uwa­ga: nie ma żad­ne­go sen­su umiesz­cza­nie na takich mode­lach deta­licz­nych prac takich jak wpro­wa­dze­nie danych zama­wia­ją­ce­go” czy spraw­dze­nie sal­da” bo to są ele­men­ty (kro­ki) pro­ce­dur. Innymi sło­wy nie rysu­je­my” na dia­gra­mach tego jak i w jakiej kolej­no­ści wypeł­nić pola for­mu­la­rza. Po pierw­sze zaciem­ni to obraz, po dru­gie pro­ce­dur, reguł biz­ne­so­wych i słow­ni­ków nie mode­lu­je­my z uży­ciem BPMN. Robi się to w posta­ci odręb­nych doku­men­tów lub diagramów.

Powyższy model obra­zu­je sytu­ację, w któ­rej pew­na fir­ma odsy­ła ofer­ty na zapy­ta­nia, otrzy­mu­jąc zaś zamó­wie­nie, spraw­dza je od stro­ny for­mal­nej i reali­zu­je. Każdy taki model, dla peł­nej zro­zu­mia­ło­ści, MUSI mieć załą­czo­ne (dia­gra­my, wzo­ry wydru­ków, inne) struk­tu­ry tych doku­men­tów. Dodatkiem będzie wła­śnie model infor­ma­cyj­ny czy­li logicz­na struk­tu­ra powią­zań logicz­nych mię­dzy doku­men­ta­mi (korzy­sta­ją z niej oso­by pra­cu­ją­ce z tymi dokumentami).

Prosta wer­sja takie­go mode­lu infor­ma­cyj­ne­go może zostać wyko­na­ną tak­że w nota­cji BPMN:

Tu jed­nak moż­li­we jest poka­za­nie jedy­nie związ­ków jaki­mi są tak zwa­ne refe­ren­cje, czy­li wza­jem­ne jaw­ne odwo­ła­nia (np. for­mu­larz ofer­ty zawie­ra pole z nume­rem zapy­ta­nia). Pełny model infor­ma­cyj­ny moż­na wyko­nać z uży­ciem nota­cji UML:

Powyższy dia­gram to kla­sy repre­zen­tu­ją­ce nazwa­ne struk­tu­ry doku­men­tów (ich typy) oraz związ­ki logicz­ne mię­dzy nimi (aso­cja­cje w UML to nie są trwa­łe rela­cje zna­ne z baz danych a jedy­nie związ­ki seman­tycz­ne). Związki te moż­na zobra­zo­wać jeże­li są to trwa­łe (wbu­do­wa­ne w treść) binar­ne powią­za­nia (zwią­zek pomię­dzy dwo­ma kla­sa­mi). Jednak związ­ki dyna­micz­ne, defi­nio­wa­ne przez regu­ły biz­ne­so­we, nie dają się zobra­zo­wać dla­te­go poprze­sta­je­my na wyspe­cy­fi­ko­wa­niu takiej reguły.

Powyższy dia­gram mówi nam, że:

  • powią­za­nie pomię­dzy ory­gi­na­łem zapy­ta­nia (np. jego skan na dys­ku) a wewnętrz­nym doku­men­tem Zapytanie od klien­ta, jest zawar­te w doku­men­cie (for­mu­larz) Metadane zapy­tań (jest to kla­sa aso­cja­cyj­na UML), któ­ry (hipo­te­tycz­ny sza­blon był­by w załą­cze­niu) zawie­ra infor­ma­cje o poło­że­niu pli­ku na dys­ku i przy­dzie­lo­nym mu np. wewnętrz­nym nume­rze Zapytania,
  • powią­za­nie pomię­dzy Ofertą han­dlo­wą a Zapytaniem jest wbu­do­wa­ne w Oferty w posta­ci nume­ru zapy­ta­nia, jako jed­ne­go z atry­bu­tów doku­men­tu Oferta (Oferta w swo­jej tre­ści powo­łu­je się na numer Zapytania, zobra­zo­wa­no to aso­cja­cją kwa­li­fi­ko­wa­ną UML),
  • zwią­zek pomię­dzy doku­men­tem a oso­bą, któ­ra ma dostęp do jego tre­ści opi­su­je regu­ła biz­ne­so­wa mówią­ca, że Sprzedawca ma dostęp do doku­men­tów klien­tów, któ­rych jest opie­ku­nem”, regu­ła ta zosta­ła zaim­ple­men­to­wa­na w posta­ci doku­men­tu Opiekun (kla­sa aso­cja­cyj­na UML) , zakła­da­my że jest to for­mu­larz zawie­ra­ją­cy nazwę klien­ta i nazwę jego opie­ku­na (np. udo­ku­men­to­wa­na decy­zja dyr. dzia­łu sprze­da­ży), te doku­men­ty mogą być w dowol­nej chwi­li zmie­nia­ne, doda­wa­ne i usuwane.

Jak widać dia­gram nie zawie­ra aso­cja­cji pomię­dzy Sprzedawcą a doku­men­ta­mi (dostęp Sprzedawcy do tre­ści dane­go doku­men­tu), gdyż ich sen­sow­ne zobra­zo­wa­nie na dia­gra­mie jest prak­tycz­nie niemożliwe.

Taki dia­gram zawie­ra pre­cy­zyj­ne infor­ma­cje o tym jakie i jak powią­za­ne z sobą infor­ma­cje prze­twa­rza orga­ni­za­cja. Nie jest to abso­lut­nie coś co nale­ży odwzo­ro­wać jako model kodu, nie ma tu żad­nych licz­no­ści klas, bo te tak­że są (poten­cjal­nie zmien­ny­mi) regu­ła­mi biz­ne­so­wy­mi (np. regu­ła: jeden sprze­daw­ca nie może się opie­ko­wać wię­cej niż dzie­się­cio­ma klien­ta­mi). Nie jest to żaden model danych, struk­tu­ry for­mu­la­rzy doku­men­tu­je­my osob­no. Nie jest też powie­dzia­ne, że imple­men­ta­cja for­mu­la­rzy to tabli­ce z kolum­na­mi odpo­wia­da­ją­cy­mi polom for­mu­la­rzy (to zresz­tą bar­dzo kiep­ski pomysł).

Pełna doku­men­ta­cja powin­na zawie­rać w załą­cze­niu deta­licz­ne struk­tu­ry tych for­mu­la­rzy (dia­gra­my przed­sta­wia­ją­ce struk­tu­ry XML, lub sko­men­to­wa­ne mock-up’y doku­men­tów). Taka spe­cy­fi­ka­cja zawie­ra wszyst­kie infor­ma­cje pozwa­la­ją­ce deve­lo­pe­ro­wi stwo­rzyć opro­gra­mo­wa­nie słu­żą­ce do zbie­ra­nia i zarzą­dza­nia infor­ma­cją. Jako model wyma­gań na sys­te­my typu EOD3 jest wystarczająca.

Gdyby było praw­dą, że wyma­ga­my od opro­gra­mo­wa­nia tak­że, by zawar­tość wybra­nych pól tych for­mu­la­rzy była wyli­cza­na lub wery­fi­ko­wa­na, musi­my dodat­ko­wo udo­ku­men­to­wać zależ­no­ści mię­dzy tymi pola­mi. Model taki czę­sto war­to uzu­peł­nić wyma­ga­ną archi­tek­tu­rą opro­gra­mo­wa­nia, bo od niej zale­żą cechy jako­ścio­we apli­ka­cji, tak zwa­ne poza­funk­cjo­nal­ne. Będzie to wła­śnie model dzie­dzi­ny sys­te­mu, opi­sy­wa­ny na moim blo­gu wielokrotnie. 

Poniżej cel i pro­ces budo­wy mode­li poję­cio­wych :

M. van Sinderen and P. Johnson (Eds.): IWEI 2011, LNBIP 76, pp. 146?162, 2011. ? IFIP International Federation for Information Processing 2011
M. van Sinderen and P. Johnson (Eds.): IWEI 2011, LNBIP 76, pp. 146?162, 2011. ? IFIP International Federation for Information Processing 2011

Zapraszam tak­że do lek­tu­ry kon­ty­nu­acji tego zagad­nie­nia w arty­ku­le Bazy Dokumentowe.

Źródła

van Sinderen, M., & Johnson, P. (Eds.). (2011). Enterprise Interoperability: Third International IFIP Working Conference, IWEI 2011, Stockholm, Sweden, March 23 – 24, 2011. Proceedings (Vol. 76). Springer Berlin Heidelberg. https://​doi​.org/​1​0​.​1​0​0​7​/​978 – 3‑642 – 19680‑5
Usman, Z., Young, R. I. M., Chungoora, N., Palmer, C., Case, K., & Harding, J. (2011). A Manufacturing Core Concepts Ontology for Product Lifecycle Interoperability. In M. van Sinderen & P. Johnson (Eds.), Enterprise Interoperability (pp. 5 – 18). Springer. https://​doi​.org/​1​0​.​1​0​0​7​/​978 – 3‑642 – 19680-5_3

Jarosław Żeliński

BIO: Od roku 1991 roku, nieprzerwanie, realizuję projekty z zakresu analiz i projektowania systemów, dla urzędów, firm i organizacji. Od 1998 roku prowadzę także samodzielne studia i prace badawcze z obszaru analizy systemowej i modelowania (modele jako przedmiot badań: ORCID). Od 2005 roku, jako nieetatowy wykładowca akademicki, prowadzę wykłady i laboratoria (ontologie i modelowanie systemów informacyjnych, aktualnie w Wyższej Szkole Informatyki Stosowanej i Zarządzania pod auspicjami Polskiej Akademii Nauk w Warszawie. Oświadczenia: moje badania i publikacje nie mają finansowania z zewnątrz, jako ich autor deklaruję brak konfliktu interesów.

Ten post ma 2 komentarzy

  1. Leo

    Dzień dobry, a jak zgod­nie ze sztu­ką powi­nien zostać zamo­de­lo­wa­ny sza­blon, któ­re­go pola nie są z góry zna­ne? O tym ile będzie tych pól na sza­blo­nie, jaką będą mia­ły nazwę i jakie infor­ma­cje będą prze­cho­wy­wać (tekst, tekst for­ma­to­wa­ny, link, lista, załącz­nik, pdf w for­mie wido­ku, gra­fi­ka, tabe­la itd.) zde­cy­du­je każ­do­ra­zo­wo przy­szły użytkownik.

    1. Jarosław Żeliński

      Jeżeli to miał by być model danych rela­cyj­ny to nie ma takiej moż­łi­wo­ści (tu musi być wszyst­ko od razu).
      Jeżeli sza­blon (doku­ment) mode­lu­je­my jako agre­gat (UML, struk­tu­ry zło­żo­ne, rozdz. 11) to:
      – atry­but jako część (part of) tak­że może być obiek­tem (struk­tu­rą) i moż­na na sza­blo­nie umie­ścić jego abs­trak­cję zamiast deta­licz­nej struk­tu­ry (role).
      – póź­niej zamie­nić tę abs­trak­cję na konkrety.

      Opis z przy­kła­dem tu:
      https://​it​-con​sul​ting​.pl/​a​u​t​o​i​n​s​t​a​l​a​t​o​r​/​w​o​r​d​p​r​e​s​s​/​2​0​2​1​/​0​5​/​0​2​/​k​r​o​t​k​a​-​h​i​s​t​o​r​i​a​-​p​e​w​n​e​g​o​-​w​y​m​a​g​a​n​ia/

Dodaj komentarz

Witryna wykorzystuje Akismet, aby ograniczyć spam. Dowiedz się więcej jak przetwarzane są dane komentarzy.