Models and architecture

now browsing by category

The main cat­egory of my posts, my exper­i­ence and research as well.

 

UML model and stereotypes as icons

Someone will ask: why all this? The thing is that man­aging present­a­tion graph­ics (mod­el con­sist­ency, tra­cing, etc.) is prac­tic­ally impossible: any change requires inter­fer­ence with block dia­grams and labor­i­ous rein­ser­tion into the ana­lys­is report (I wrote about this in an art­icle about CASE tools). Such graph­ics are not trans­fer­able between tools oth­er than as uned­it­able bit­maps. How­ever, if someone feels that block dia­grams expressed in more «friendly» sym­bols add value to the pro­ject, they can do so. The UML provides for this and many tools allow it (I used Visual-Paradigm).

Source: UML mod­el and ste­reo­types as icons – Jarosław Żeliński IT-Con­sult­ing.

Information architecture, information system vs. information technology in the organisation

There are also simple and obvi­ous conclusions: 

  • there is no point in design­ing an “inform­a­tion sys­tem” without fully under­stand­ing (i.e. also doc­u­ment­ing) the “inform­a­tion system, ”
  • there is no point in pla­cing the ele­ments of the “inform­a­tion sys­tem” on “inform­a­tion sys­tem” mod­els (e.g. There is no point in put­ting the “inform­a­tion sys­tem” ele­ments on “inform­a­tion sys­tem” mod­els (e.g. sym­bols rep­res­ent­ing soft­ware on BPMN models)
  • the rela­tion­ships between the “inform­a­tion sys­tem” ele­ments and the “inform­a­tion sys­tem” ele­ments are described with the help of the trace­ab­il­ity matrix
  • Devel­op­ing the require­ments for the “inform­a­tion sys­tem” is about identi­fy­ing the “busi­ness needs” and devel­op­ing the logic of oper­a­tion and archi­tec­ture of the “inform­a­tion sys­tem” on their basis (MBSE, MDD), and not on col­lect­ing myth­ic­al “user require­ments”, who in fact have no idea about “inform­a­tion sys­tems”, but know very well if and when they need help in the busi­ness pro­cesses being imple­men­ted  this is why meth­ods based on design­ing an “inform­a­tion sys­tem” on the basis of inter­views (work­shops) with future users are doomed to fail­ure from the out­set (because even if some­thing sens­ible is finally cre­ated, it will take a lot of tri­al-and-error work)
  • One thing we have known for years: one of the most dam­aging theses in IT is the one say­ing that a doc­u­ment is a report from a database.

Source: Architek­tura inform­acji, sys­tem inform­acyjny a informatyczny w organ­iz­a­cji – Jarosław Żeliński IT-Consulting

Diagrams in UML notation

UML dia­grams and the way they are used, since the very begin­ning of this nota­tion, have aroused emo­tions and waves of con­flict­ing com­ments. The reas­on for this is the high level of abstrac­tion of the ana­lys­is stage and mod­el­ling as a dis­cip­line, and the fairly wide­spread mis­un­der­stand­ing of the essence of this nota­tion. This is com­poun­ded by the huge dif­fer­ence between what we call ana­lys­is and object-ori­ented design (OOAD) and object-ori­ented pro­gram­ming lan­guages (OOP).UML nota­tion is mis­takenly treated by many people as just anoth­er set of sym­bols for cre­at­ing illus­tra­tions. Most developers I know feel that these dia­grams do noth­ing to help them, and they are gen­er­ally right, because the qual­ity and con­tent of much of the doc­u­ment­a­tion pro­duced with UML, is poor, and such doc­u­ment­a­tion is actu­ally use­less to the soft­ware vendor.

Source: Dia­gramy w not­acji UML – Jarosław Żeliński IT-Consulting

Value-stream mapping i.e. the value stream a company creates when creating its product

The acronym VSM has also star­ted to appear in soft­ware engin­eer­ing for some time now, but it has an old ped­i­gree of more than 30 years. Value-stream Map­ping (VSM), known for 30 years, more recently also as mater­i­al- and inform­a­tion-flow map­ping. It is a meth­od with its ori­gins in Lean Man­age­ment, used to ana­lyse the cur­rent state and design the future state for the series of events that lead a product or ser­vice from order to deliv­ery to the customer.

Source: Value-stream map­ping czyli stru­mień war­tości jaki wyt­war­za firma tworząc swój produkt – Jarosław Żeliński IT-Consulting

What are tests and who tests what

Test­ing is check­ing, and here we have (should have) a clear divi­sion between the check­er and the checked. It is typ­ic­al of the IT mar­ket to tell cus­tom­ers that they have no com­pet­ence in ana­lys­is, test­ing, design, that all this will be done by the soft­ware sup­pli­er. Thus, the fol­low­ing are ordered from the same, single, soft­ware sup­pli­er: busi­ness ana­lys­is, require­ments ana­lys­is, design, imple­ment­a­tion, writ­ing accept­ance tests and test­ing. An entity like the Pur­chaser in essence just watches, and pays as much as the sup­pli­ers want (T&M pro­jects are out of con­trol). In effect, the check­er and checked are the same entity. Does this make sense?

Source: Czym są testy oraz kto i co tes­tuje – Jarosław Żeliński IT-Consulting

SysML – a few words about

In this place, I have been col­lect­ing some speaks about the SysML lan­guage. It is ori­gin from UML (it is a UML pro­file). SysML is the main MBSE meth­od we use for doc­u­ment­ing mechat­ron­ics models. 

Who needs Mod­el Based Sys­tems Engin­eer­ing (MBSE) in 6 minutes
Sys­tems Engin­eer­ing Your MBSE Deploy­ment by Dav­id Long
SysML ?AND? Its Role and Place in Sys­tems Engin­eer­ing with Zane Scott
https://youtu.be/xGDErNmqNLw
Intro­duc­tion to Sys­tems Mod­el­ing Lan­guage (SysML)
The Four Pil­lars of SysML 

Ontology-Oriented Data Management and Document Databases

This study presents a meth­od for the stor­age of data organ­ized in digit­al doc­u­ments, which is proven in prac­tice. The dis­cussed meth­od does not bear any dis­ad­vant­ages of the rela­tion­al mod­el used for data organ­iz­a­tion, such as the loss of data con­text and com­plic­a­tions evoked by the lack of data redund­ancy. The meth­od presen­ted here can be used for data organ­iz­a­tion into doc­u­ments (digit­al and paper) as clas­si­fied aggreg­ates and for data clas­si­fic­a­tion. The study also describes a new metamod­el for the data struc­ture which assumes that doc­u­ments, being data struc­tures, form com­pact aggreg­ates, clas­si­fied as objects, or event descrip­tions, thus always assign­ing them a spe­cif­ic and unam­bigu­ous con­text. Fur­ther­more, the study presents a design meth­od for doc­u­ments as con­text aggreg­ates that allows lev­el­ing the dis­ad­vant­ages of the rela­tion­al mod­el and ensures effi­cient inform­a­tion man­age­ment. The work also con­tains prac­tic­al examples of the applic­a­tion of the described method.

Digit­al Doc­u­ments as Data Car­ri­ers and a Meth­od of Data Man­age­ment Guar­an­tee­ing the Unam­bi­gu­ity of the Recor­ded Inform­a­tion: Onto­logy-Ori­ented Data Man­age­ment and Doc­u­ment Databases

Buy and read more…

Synthesis of MOF, MDA, PIM, MVC, and BCE Notations and Patterns

Exactly one year ago my first paper in US ? (see lif­let)

Abstract

Pub­lic­a­tions, includ­ing aca­dem­ic hand­books, con­tain numer­ous incon­sist­en­cies in the descrip­tions of applic­a­tions of archi­tec­tur­al meth­ods and pat­terns hid­den under the abbre­vi­ations such as MOF, MDA, PIM, MVC, BCE. An effi­cient ana­lys­is and the fol­low­ing soft­ware design, par­tic­u­larly when we are speak­ing of pro­jects real­ized in large teams, requires stand­ard­iz­a­tion of the pro­duc­tion pro­cess and the applied pat­terns and frame­works. This study attemp­ted to sort out the sys­tem of nota­tions describ­ing this pro­cess and used to describe archi­tec­tur­al pat­terns. Ana­lys­is of key notations?MOF and MDA, pat­terns MVC and BCE?was car­ried out, and a con­sist­ent sys­tem com­bin­ing them into a whole was created.Chapter Pre­view Top

Background

In this study, Object Man­age­ment Group nota­tion sys­tems have been used. MOF (Meta Object Facil­ity) spe­cific­a­tion describes three abstrac­tion levels: M1, M2, M3 and level M0 that is real items (OMG MOF, 2016). M0 is a real sys­tem, M1 level is abstrac­tion of the items of this sys­tem (its mod­el). Level M2 com­prises of rela­tion­ships between classes of these objects (names of their sets) that is sys­tem metamod­el. M3 level is a meta-metamod­el describ­ing the mod­el­ing meth­od with the use of named ele­ments with spe­cified semantics and syntactic.

The ana­lys­is and design pro­cess is based on the MDA (Mod­el Driv­en Archi­tec­ture) spe­cific­a­tions. This pro­cess has three phases under­stood as cre­ation of sub­sequent mod­els: CIM (Com­pu­ta­tion Inde­pend­ent Mod­el), PIM (Plat­form Inde­pend­ent Mod­el), PSM (Plat­form Spe­cif­ic Mod­el) and code cre­ation phase. The CIM mod­el is doc­u­mented with the use of BPMN (Busi­ness Pro­cess Mod­el and Nota­tion) (OMG BPMN, 2013) and SBVR nota­tion (Semant­ic of Busi­ness Vocab­u­lary and Rules) (OMG SBVR, 2017). These are, respect­ively: busi­ness pro­cess mod­els and nota­tion mod­els and busi­ness rules. PIM and PSM mod­els are doc­u­mented with the use of UML nota­tion (Uni­fied Mod­el­ing Lan­guage) (OMG UML, 2017).

Between CIM and PIM mod­els, determ­in­a­tion of the list of applic­a­tion ser­vices (sys­tem reac­tions) occurs, whose real­iz­a­tion mech­an­ism is described by PIM mod­el. The stand­ard pat­tern used for mod­el­ing applic­a­tion archi­tec­ture is MVC pat­tern. Com­pon­ent Mod­el of this pat­tern is modeled with the use of the BCE archi­tec­tur­al pattern.

Semiotics vs. UML

Semi­ot­ics, as a sci­ence deal­ing with sym­bols and their mean­ings, provides us with the tool enabling determ­in­a­tion of rela­tion­ships between an object (thing), its name (expres­sion) and defin­i­tion of nota­tion rep­res­en­ted by the name (or sign, mean­ing). These rela­tion­ships are referred to as the semi­ot­ic tri­angle. Fig­ure 1 rep­res­ents this tri­angle on the left (OMG SBVR, 2017).

The UML nota­tion (OMG UML, 2017) oper­ates instance clas­si­fi­er and class nota­tions. To the right, Fig­ure 1 demon­strates an equi­val­ent to semi­ot­ic tri­angle expressed with those terms.

The UML nota­tion fur­ther oper­ates the gen­er­al struc­ture nota­tion, which is the con­tent of each cor­rect UML dia­gram. Struc­tures may express a con­cep­tu­al mod­el (Namespace) or mod­el (also metamod­el) of sys­tem archi­tec­ture (e.g. soft­ware) in the form of a chart (Archi­tec­ture).

Synthesis of MOF, MDA, PIM, MVC, and BCE Notations and Patterns

Jaroslaw Zel­in­ski (Inde­pend­ent Research­er)
Source Title: Applic­a­tions and Approaches to Object-Ori­ented Soft­ware Design: Emer­ging Research and Oppor­tun­it­iesCopy­right: ? 2020 |Pages: 12DOI: 10.4018/978–1‑7998–2142‑7.ch003

Business continuity management – how to model it

Busi­ness Con­tinu­ity Man­age­ment (BCM) pro­jects are really dif­fi­cult . The main reas­on is the sys­tem com­plex­ity: many doc­u­ments, many tasks, many pro­cesses, many asso­ci­ations between all of them. Each task con­nec­ted to one or more busi­ness applic­a­tion. Each doc­u­ments stored in dif­fer­ent data­base. The applic­a­tions are integ­rated. Everything works like one chain ? but one broken link can crash everything .

How we can man­aging risks? We can cre­ate Busi­ness Archi­tec­ture mod­el and expand this up to Enter­prise Archi­tec­ture, as a mod­el for trace pro­cess, data, IT sys­tem and infrastructure.

(source: https://en.wikipedia.org/wiki/Enterprise_architecture_framework)

How we pre­pare Enter­prise Archi­tec­ture mod­el? Simple ver­sion: pre­pare busi­ness mod­el :

Trans­form this to use case mod­el (applic­a­tion ser­vices) :

Build mat­rix for trace map­ping con­trol :

Trace (map) use case to soft­ware com­pon­ents :

We have com­pleted mod­el, we can do impact ana­lys­is, e.g. what hap­pens and where, when the Ruter go down: 

Some­times we ask: what does the pos­sib­il­ity of car­ry­ing out the Pack­age Goods task depend on?

How can we do this and what tools do we need? Wel­come in my courses, hire me …

References

Kama, N., French, T., & Reyn­olds, M. (2011). Design Pat­terns Con­sid­er­a­tion in Class Inter­ac­tions Pre­dic­tion Devel­op­ment. Inter­na­tion­al Journ­al of Advanced Sci­ence and Tech­no­logy, 28, 21.
Poels, G., Gar­cía, F., Ruiz, F., & Piat­tini, M. (2020). Archi­tect­ing busi­ness pro­cess maps. Com­puter Sci­ence and Inform­a­tion Sys­tems, 17(1), 117–139. https://doi.org/10.2298/CSIS181118018P
Kacem, M. H., Jmaiel, M., Kacem, A. H., & Dri­ra, K. (2006). Trends in Enter­prise Applic­a­tion Archi­tec­ture. Lec­ture Notes in Com­puter Sci­ence, 158–171. https://www.academia.edu/2150818/An_UML-based_approach_for_validation_of_software_architecture_descriptions
McDavid, D. W. (1999). A stand­ard for busi­ness archi­tec­ture descrip­tion. IBM Sys­tems Journ­al, 38(1), 12–31. https://doi.org/10.1147/sj.381.0012
Gomes, S. B., San­toro, F. M., & Mira da Silva, M. (2020). An Onto­logy for BPM in Digit­al Trans­form­a­tion and Innov­a­tion: Inter­na­tion­al Journ­al of Inform­a­tion Sys­tem Mod­el­ing and Design, 11(2), 52–77. https://doi.org/10.4018/IJISMD.2020040103
Shishkov, B. (2020). Design­ing enter­prise inform­a­tion sys­tems mer­ging enter­prise mod­el­ing and soft­ware spe­cific­a­tion.
Hawryszkiewycz, I. T. (2012). Agile Busi­ness Sys­tem Design: Using Inform­a­tion Tech­no­logy to cre­ate busi­ness value (1 edi­tion). Vivid Publishing.

Types instead of inheritance

Many time we can see require­ment writ­ten as a “class dia­gram for pro­ject”. What “class dia­gram” mean? We can use UML class dia­gram for: archi­tec­ture mod­el, notions mod­el, some­times oth­er. Which type of mod­el do you need? Class dia­gram is a tool. When we say mod­el, we have to provided con­text: mod­el of what?

We use inher­it­ance in mod­els of notions (for build­ing tax­onom­ies), nev­er in archi­tec­ture.. In archi­tec­ture mod­els we use types. In 2015 OMG pub­lished UML v.2.5. Inher­it­ance was removed from UML . Why? Wel­come in my courses?

References

Object Man­age­ment Group. (2017, Decem­ber). Uni­fied Mod­el­ing Lan­guage (UML) [OMG.org]. UML. https://www.omg.org/spec/UML/
Object Man­age­ment Group. (2017, Decem­ber 8). Sys­tems Mod­el­ing Lan­guage (SysML). http://www.omgsysml.org/
Weilki­ens, T. (2007). Sys­tems engin­eer­ing with SysML/UML: mod­el­ing, ana­lys­is, design (1. Aufl). Mor­gan Kaufmann OMG Press/Elsevier.
Friedenth­al, S., Moore, A., & Stein­er, R. (2015). A prac­tic­al guide to SysML: the sys­tems mod­el­ing lan­guage (Third edi­tion). Elsevi­er, MK, Mor­gan Kaufmann is an imprint of Elsevi­er. https://www.sciencedirect.com/book/9780128002025/a‑practical-guide-to-sysml