27

August

Appi, mu rakenduses on mitu mudelit!

Marek Tihkan

Model Läbi aegade on mudelid aidanud meil probleeme lahendada. Enne Bohri mudelit oli Rutherfordi mudel ja kuubi mudel – kõik kirjeldasid sama asja, kuid erinevatest vaatenurkadest ja täpsusastmest ning sellest tulenevalt oli võimalik teooriaid nende peale luua, mis üks hetk võisid vähem vajalikuks muutuda.

Bohri mudel võib olla vägagi täpne, kuid vahel meile piisab ka kuubi mudelist. Teisisõnu mudelid ei pea täielikult peegeldama reaalsust. Võtame mudelisse need osad reaalsusest, mis rajatava süsteemi jaoks olulised on ja ka neid vääname enda nägemise järgi abstraktsioonidega. Näiteks rakuehituse uurimisel pole meile aatomite maailm väga oluline.

Kuna mudelid ei hõlma kõike, siis süsteemides oleks narr proovida kõike teha ühe mudeli najal. Äriloogika jaoks meil on ärimudel ja aruandluse jaoks teine. Ühe kõikehõlmava mudeli hind on kallis – meeletu keerukus ja tendents struktuurituse poole.

Mudelitest kõige olulisem on tuum, mis on peamiselt äriline eristatavus ning selle loomisel tasub võimalikult palju vaeva näha (mõne süsteemi tuum võibki olla aruandlus, siis tulebki sellega kõige rohkem tegeleda).

Rakendustes on peamiselt ärimudel, mis koosneb omakorda pisematest mudelitest; vaate/presentatsiooni mudel, mida viiakse enamikel kordadel kokku eelnevaga ja seetõttu ka vaade suures osas domineerib; aruandluse mudel, mis on normaliseerimata, kuid sellegi saatus on samaväärne vaate mudeliga. Seega mitme mudeli olemasolu puhul ei tasu paanikasse minna, kuid ühe puhul küll.

Oleme jõudnud arusaamisele, et mudelid peab eraldama ning võimalusi selleks on: luua kõik mudelid eraldi; eraldada päringud käskudest (Command Query Separation), mis jagaks mudeli kaheks – lugemine (võimalikult lame ja normaliseerimata mudel) ja kirjutamine.

Karta ei tasu mitut mudelit, vaid ühe olemasolu. Alternatiivne variant mitme mudelite (äri, aruandlus, vaate mudel jne) jaoks on Command Query Separation (CQS). Kui kellelgi veel mõni hea idee on, kuidas võiks lahendada keerukuse kasvu ja struktuurituse poole liikumise probleemi ühe mudeli puhul, siis andke julgesti teada. Seniks meeldivat mudelite eraldamist ja loomist.

Loe veel sarnastel teemadel:

  • Share/Bookmark

KATEGOORIAD » Analüüs/Arhitektuur

SILDID » ,

Lisa kommentaar

  • * Kuvatakse kommentaari juures
  • * Ei publitseerita