{"id":61317,"date":"2023-12-12T14:44:26","date_gmt":"2023-12-12T05:44:26","guid":{"rendered":"https:\/\/monolith.law\/et\/?p=61317"},"modified":"2024-06-04T11:12:59","modified_gmt":"2024-06-04T02:12:59","slug":"server-infrastructure-for-system-development","status":"publish","type":"post","link":"https:\/\/monolith.law\/et\/it\/server-infrastructure-for-system-development","title":{"rendered":"Millised on seaduslikud probleemid, mis on seotud s\u00fcsteemiarenduse serveri ja infrastruktuuriga?"},"content":{"rendered":"\n<p>Ettev\u00f5tetes kasutatavad IT-s\u00fcsteemid luuakse teatud m\u00f5ttes spetsifikatsioonide ja disainidokumentide koostamise ning nende sisu kajastava l\u00e4htekoodi kirjutamise kaudu. Kuid s\u00fcsteem ei toimi tegelikult mitte ainult selliste pehmete aspektide, vaid ka f\u00fc\u00fcsilise arvuti, st infrastruktuuri olemasolu korral. K\u00e4esolevas artiklis k\u00e4sitleme s\u00fcsteemiarendusprojektides infrastruktuuriga tihedalt seotud \u00f5igusprobleeme.<\/p>\n\n\n\n<div id=\"ez-toc-container\" class=\"ez-toc-v2_0_53 counter-hierarchy ez-toc-counter ez-toc-grey ez-toc-container-direction\">\n<div class=\"ez-toc-title-container\">\n<span class=\"ez-toc-title-toggle\"><\/span><\/div>\n<nav><ul class='ez-toc-list ez-toc-list-level-1 ' ><li class='ez-toc-page-1 ez-toc-heading-level-2'><a class=\"ez-toc-link ez-toc-heading-1\" href=\"https:\/\/monolith.law\/et\/it\/server-infrastructure-for-system-development\/#Infrastruktuur_IT-susteemides\" title=\"Infrastruktuur IT-s\u00fcsteemides\">Infrastruktuur IT-s\u00fcsteemides<\/a><\/li><li class='ez-toc-page-1 ez-toc-heading-level-2'><a class=\"ez-toc-link ez-toc-heading-2\" href=\"https:\/\/monolith.law\/et\/it\/server-infrastructure-for-system-development\/#Konkreetsed_olukorrad_kus_infrastruktuuri_probleemid_pohjustavad_projekti_polemist\" title=\"Konkreetsed olukorrad, kus infrastruktuuri probleemid p\u00f5hjustavad projekti p\u00f5lemist\">Konkreetsed olukorrad, kus infrastruktuuri probleemid p\u00f5hjustavad projekti p\u00f5lemist<\/a><ul class='ez-toc-list-level-3'><li class='ez-toc-heading-level-3'><a class=\"ez-toc-link ez-toc-heading-3\" href=\"https:\/\/monolith.law\/et\/it\/server-infrastructure-for-system-development\/#Serveri_suuruse_viga_pohjustab_konflikti\" title=\"Serveri suuruse viga p\u00f5hjustab konflikti\">Serveri suuruse viga p\u00f5hjustab konflikti<\/a><\/li><li class='ez-toc-page-1 ez-toc-heading-level-3'><a class=\"ez-toc-link ez-toc-heading-4\" href=\"https:\/\/monolith.law\/et\/it\/server-infrastructure-for-system-development\/#Juhtumi_olemus_on_tarnija_vastutuse_ulatus_ebaselgete_spetsifikatsioonide_suhtes\" title=\"Juhtumi olemus on tarnija vastutuse ulatus ebaselgete spetsifikatsioonide suhtes\">Juhtumi olemus on tarnija vastutuse ulatus ebaselgete spetsifikatsioonide suhtes<\/a><\/li><\/ul><\/li><li class='ez-toc-page-1 ez-toc-heading-level-2'><a class=\"ez-toc-link ez-toc-heading-5\" href=\"https:\/\/monolith.law\/et\/it\/server-infrastructure-for-system-development\/#Meetmed_serveri_suuruse_maaramise_viga_tottu_tekkivate_probleemide_valtimiseks\" title=\"Meetmed serveri suuruse m\u00e4\u00e4ramise viga t\u00f5ttu tekkivate probleemide v\u00e4ltimiseks\">Meetmed serveri suuruse m\u00e4\u00e4ramise viga t\u00f5ttu tekkivate probleemide v\u00e4ltimiseks<\/a><ul class='ez-toc-list-level-3'><li class='ez-toc-heading-level-3'><a class=\"ez-toc-link ez-toc-heading-6\" href=\"https:\/\/monolith.law\/et\/it\/server-infrastructure-for-system-development\/#Serveri_suuruse_maaramise_eest_vastutuse_selge_maaratlemine_lepingus\" title=\"Serveri suuruse m\u00e4\u00e4ramise eest vastutuse selge m\u00e4\u00e4ratlemine lepingus\">Serveri suuruse m\u00e4\u00e4ramise eest vastutuse selge m\u00e4\u00e4ratlemine lepingus<\/a><\/li><li class='ez-toc-page-1 ez-toc-heading-level-3'><a class=\"ez-toc-link ez-toc-heading-7\" href=\"https:\/\/monolith.law\/et\/it\/server-infrastructure-for-system-development\/#Arendusnouete_konkretiseerimine_ja_muudatuste_haldamine\" title=\"Arendusn\u00f5uete konkretiseerimine ja muudatuste haldamine\">Arendusn\u00f5uete konkretiseerimine ja muudatuste haldamine<\/a><\/li><li class='ez-toc-page-1 ez-toc-heading-level-3'><a class=\"ez-toc-link ez-toc-heading-8\" href=\"https:\/\/monolith.law\/et\/it\/server-infrastructure-for-system-development\/#Projekti_olemusele_vastava_arendusmudeli_valimine\" title=\"Projekti olemusele vastava arendusmudeli valimine\">Projekti olemusele vastava arendusmudeli valimine<\/a><\/li><\/ul><\/li><li class='ez-toc-page-1 ez-toc-heading-level-2'><a class=\"ez-toc-link ez-toc-heading-9\" href=\"https:\/\/monolith.law\/et\/it\/server-infrastructure-for-system-development\/#Kokkuvote\" title=\"Kokkuv\u00f5te\">Kokkuv\u00f5te<\/a><\/li><\/ul><\/nav><\/div>\n<h2 class=\"wp-block-heading\"><span class=\"ez-toc-section\" id=\"Infrastruktuur_IT-susteemides\"><\/span>Infrastruktuur IT-s\u00fcsteemides<span class=\"ez-toc-section-end\"><\/span><\/h2>\n\n\n\n<p>S\u00fcsteemiarendajaid nimetatakse s\u00fcsteemiinsenerideks (SE). Arendusprojektid algavad \u00fcldjuhul \u00fclalt-alla protsessidega, nagu spetsifikatsioonide ja disainidokumentide loomine, ning j\u00e4tkuvad programmi rakendamise ja selle testimisega. Laiemas m\u00f5ttes v\u00f5ib \u00f6elda, et s\u00fcsteemiinsener (SE) on tehnik, kes tegeleb k\u00f5igi nende vajalike \u00fclesannetega, kuid ettev\u00f5tted ja t\u00f6\u00f6kohad v\u00f5ivad m\u00f5nikord eristada peenemaid nimetusi s\u00f5ltuvalt vastutusalast ja valdkonnast. Infrastruktuuriinsener on termin, mis viitab tehnikule, kes tegeleb eriti f\u00fc\u00fcsilise arvuti t\u00f6\u00f6keskkonna ettevalmistamisega IT-s\u00fcsteemide arendamise ja haldamise raames. IT-s\u00fcsteemid, mida kasutatakse ettev\u00f5tetes ja t\u00f6\u00f6kohtades, on teatud m\u00f5ttes abstraktsed struktuurid, mis koosnevad l\u00e4htekoodi kombinatsioonidest. Kuid selleks, et s\u00fcsteem saaks t\u00e4ita oma algselt oodatud rolli, on h\u00e4davajalik luua infrastruktuur, sealhulgas serverid ja v\u00f5rgud. S\u00fcsteemiarenduse praktiline t\u00f6\u00f6 toimub l\u00e4htekoodi rakendamise ja selle t\u00f6\u00f6keskkonda toetava infrastruktuuri ettevalmistamise kaudu. Selline vaatenurk on oluline ka etten\u00e4gematute probleemide ennetamiseks.<\/p>\n\n\n\n<h2 class=\"wp-block-heading\"><span class=\"ez-toc-section\" id=\"Konkreetsed_olukorrad_kus_infrastruktuuri_probleemid_pohjustavad_projekti_polemist\"><\/span>Konkreetsed olukorrad, kus infrastruktuuri probleemid p\u00f5hjustavad projekti p\u00f5lemist<span class=\"ez-toc-section-end\"><\/span><\/h2>\n\n\n\n<figure class=\"wp-block-image\"><img decoding=\"async\" src=\"https:\/\/monolith.law\/wp-content\/uploads\/2019\/10\/shutterstock_1532780735-1024x620.jpg\" alt=\"\" class=\"wp-image-5570\" \/><figcaption class=\"wp-element-caption\">Infrastruktuuri hooletusse j\u00e4tmine v\u00f5ib p\u00f5hjustada &#8220;p\u00f5lemise&#8221; riski.<\/figcaption><\/figure>\n\n\n\n<p>S\u00fcsteemiarendusprojektides v\u00f5ib juhtuda, et keskendutakse ainult abstraktsele programmeerimisele ja l\u00e4htekoodi disainile, j\u00e4ttes t\u00e4helepanuta infrastruktuuri. Kuid kui m\u00f5lemad ei liigu samas tempos, v\u00f5ib see p\u00f5hjustada projekti p\u00f5lemise riski.<\/p>\n\n\n\n<h3 class=\"wp-block-heading\"><span class=\"ez-toc-section\" id=\"Serveri_suuruse_viga_pohjustab_konflikti\"><\/span>Serveri suuruse viga p\u00f5hjustab konflikti<span class=\"ez-toc-section-end\"><\/span><\/h3>\n\n\n\n<p>N\u00e4iteks v\u00f5ib juhtuda, et p\u00e4rast k\u00f5igi programmide rakendamist ja testimist selgub, et serveri t\u00f6\u00f6tlusv\u00f5ime ei ole piisav ja s\u00fcsteem ei ole praktiliseks kasutamiseks sobiv. Selleks, et hinnata, kui suurt koormust s\u00fcsteem v\u00f5ib kasutusetapis taluda, ja teha infrastruktuuri ettevalmistusi vastavalt s\u00fcsteemi suurusele, nimetatakse seda &#8220;suuruseks&#8221;. On juhtumeid, kus serveri suuruse viga on p\u00f5hjustanud probleeme. (Kuigi see on lahendatud kompromissiga, v\u00f5ib selle juhtumi n\u00e4iteks tuua.) Lisateavet kompromissi lahenduse kohta leiate j\u00e4rgmisest artiklist.<\/p>\n\n\n\n<p><a href=\"https:\/\/monolith.law\/corporate\/disputes-related-to-system-development\" target=\"_blank\" rel=\"noreferrer noopener\">https:\/\/monolith.law\/corporate\/disputes-related-to-system-development[ja]<\/a><\/p>\n\n\n\n<p>Kui konflikt on lahendatud kompromissiga, t\u00e4hendab see lihtsalt, et m\u00f5lemad pooled on &#8220;l\u00e4bir\u00e4\u00e4kimiste&#8221; tulemusel konflikti lahendanud. Seega, erinevalt kohtuotsusest, ei kogune kompromissi sisu kohtupraktikana, vaid on tavaliselt v\u00e4ga individuaalne.<\/p>\n\n\n\n<h3 class=\"wp-block-heading\"><span class=\"ez-toc-section\" id=\"Juhtumi_olemus_on_tarnija_vastutuse_ulatus_ebaselgete_spetsifikatsioonide_suhtes\"><\/span>Juhtumi olemus on tarnija vastutuse ulatus ebaselgete spetsifikatsioonide suhtes<span class=\"ez-toc-section-end\"><\/span><\/h3>\n\n\n\n<p>Kuid selliste konfliktide olemus v\u00f5ib olla ka k\u00fcsimus, kui palju vastutust peaks tarnija v\u00f5tma asjade eest, mida spetsifikatsioonides selgelt ei ole m\u00e4\u00e4ratletud. Sellest l\u00e4htuvalt saate j\u00e4rgmisest artiklist palju n\u00e4pun\u00e4iteid.<\/p>\n\n\n\n<p><a href=\"https:\/\/monolith.law\/corporate\/system-development-specs-function\" target=\"_blank\" rel=\"noreferrer noopener\">https:\/\/monolith.law\/corporate\/system-development-specs-function[ja]<\/a><\/p>\n\n\n\n<p>\u00dclaltoodud artiklis selgitatakse, kui palju peaks tarnija oma \u00e4ran\u00e4gemise j\u00e4rgi rakendama asju, mida spetsifikatsioonides ei ole m\u00e4\u00e4ratletud. Siin selgitatakse, et &#8220;ekraani&#8221; k\u00fcsimused, mida on lihtne visualiseerida n\u00f5uete m\u00e4\u00e4ratluse v\u00f5i p\u00f5hikujunduse dokumentides (nn &#8220;frontend&#8221; valdkond), ja &#8220;loogika&#8221; k\u00fcsimused, nagu andmete migratsioon (nn &#8220;backend&#8221;, &#8220;andmebaas&#8221; valdkond), on v\u00e4ga erinevad. Teisis\u00f5nu, mida rohkem on &#8220;ekraani&#8221; valdkonnas probleeme, mida tellija\/kasutaja (kes tavaliselt ei oma s\u00fcsteemiarendusprojektidele spetsialiseeritud teadmisi) saab h\u00f5lpsasti tuvastada, seda t\u00f5en\u00e4olisem on, et tellija\/kasutaja vastutab. Teisest k\u00fcljest, &#8220;loogika&#8221; probleemid on t\u00f5en\u00e4oliselt tarnija vastutusel. Arvestades seda, on serveri suuruse probleemid valdkond, mida on raske m\u00f5ista, kui te ei ole tehnikaspetsialist, ja seega on t\u00f5en\u00e4oline, et need on tarnija vastutusel. Seega, kui see k\u00fcsimus t\u00f5useb kohtus t\u00f5siselt vaidluseks, on t\u00f5en\u00e4oline, et tarnijale tehakse ebasoodne otsus, kui pole aktiivseid asjaolusid, mis vabastaksid tarnija vastutusest.<\/p>\n\n\n\n<h2 class=\"wp-block-heading\"><span class=\"ez-toc-section\" id=\"Meetmed_serveri_suuruse_maaramise_viga_tottu_tekkivate_probleemide_valtimiseks\"><\/span>Meetmed serveri suuruse m\u00e4\u00e4ramise viga t\u00f5ttu tekkivate probleemide v\u00e4ltimiseks<span class=\"ez-toc-section-end\"><\/span><\/h2>\n\n\n\n<figure class=\"wp-block-image\"><img decoding=\"async\" src=\"https:\/\/monolith.law\/wp-content\/uploads\/2019\/10\/shutterstock_1501344230-1024x717.jpg\" alt=\"\" class=\"wp-image-5572\" \/><figcaption class=\"wp-element-caption\">Kirjeldame konkreetseid meetmeid probleemide ennetamiseks.<\/figcaption><\/figure>\n\n\n\n<p>Et v\u00e4ltida eelnevalt mainitud probleeme, on oluline koosk\u00f5lastada programmeerimise ja l\u00e4htekoodi kirjutamise t\u00f6\u00f6d infrastruktuuri \u00fcmbruse keskkonna ettevalmistamisega. Konkreetselt v\u00f5ib kaaluda j\u00e4rgmisi meetmeid:<\/p>\n\n\n\n<h3 class=\"wp-block-heading\"><span class=\"ez-toc-section\" id=\"Serveri_suuruse_maaramise_eest_vastutuse_selge_maaratlemine_lepingus\"><\/span>Serveri suuruse m\u00e4\u00e4ramise eest vastutuse selge m\u00e4\u00e4ratlemine lepingus<span class=\"ez-toc-section-end\"><\/span><\/h3>\n\n\n\n<p>Enamik s\u00fcsteemiarendusprojektidega seotud vaidlusi tuleneb asjaolust, et s\u00fcsteemiarenduse spetsialistide (ehk m\u00fc\u00fcjate) ja ettev\u00f5tte sisemiste asjaoludega kursis olevate kasutajate rollijaotus on ebaselge. M\u00f5istagi on m\u00f5lema osapoole tihedat koost\u00f6\u00f6d vaja projekti sujuvaks kulgemiseks, kuid sellegipoolest on soovitatav rollijaotus ja vastutusala v\u00f5imalikult selgelt lepingus m\u00e4\u00e4ratleda.<\/p>\n\n\n\n<h3 class=\"wp-block-heading\"><span class=\"ez-toc-section\" id=\"Arendusnouete_konkretiseerimine_ja_muudatuste_haldamine\"><\/span>Arendusn\u00f5uete konkretiseerimine ja muudatuste haldamine<span class=\"ez-toc-section-end\"><\/span><\/h3>\n\n\n\n<p>Lisaks, kui funktsionaalsed n\u00f5uded on algusest peale ebaselged, suureneb vaidluste tekkimise oht. See h\u00f5lmab nii algsete n\u00f5uete m\u00e4\u00e4ratlemise faasi, kus tuleb selgelt m\u00e4\u00e4ratleda spetsifikatsioonid, kui ka projekti k\u00e4igus tehtavate muudatuste haldamist. Kuidas peaksime reageerima projekti k\u00e4igus tehtavatele spetsifikatsioonimuudatustele, selgitame \u00fcksikasjalikult j\u00e4rgmises artiklis.<\/p>\n\n\n\n<p><a href=\"https:\/\/monolith.law\/corporate\/howto-manage-change-in-system-development\" target=\"_blank\" rel=\"noreferrer noopener\">https:\/\/monolith.law\/corporate\/howto-manage-change-in-system-development[ja]<\/a><\/p>\n\n\n\n<h3 class=\"wp-block-heading\"><span class=\"ez-toc-section\" id=\"Projekti_olemusele_vastava_arendusmudeli_valimine\"><\/span>Projekti olemusele vastava arendusmudeli valimine<span class=\"ez-toc-section-end\"><\/span><\/h3>\n\n\n\n<p>Lisaks, mis on tihedalt seotud eelneva kahe punktiga, on oluline valida s\u00fcsteemiarendusprojektidele sobiv arendusmudel, v\u00f5ttes arvesse nende olemust ja suurust. \u00dcldiselt, kui tegemist on teatud suurusega s\u00fcsteemi arendamisega, kus serveri suuruse m\u00e4\u00e4ramine v\u00f5ib oluliseks muutuda, v\u00f5ib eeldada, et spetsifikatsioonide ja vastutusalade selgitamiseks sobib paremini vesiputoumudel. Projekti olemusele vastava arendusmudeli valimise kohta selgitame \u00fcksikasjalikult j\u00e4rgmises artiklis.<\/p>\n\n\n\n<p><a href=\"https:\/\/monolith.law\/corporate\/legal-merits-and-demerits-of-development-model\" target=\"_blank\" rel=\"noreferrer noopener\">https:\/\/monolith.law\/corporate\/legal-merits-and-demerits-of-development-model[ja]<\/a><\/p>\n\n\n\n<h2 class=\"wp-block-heading\"><span class=\"ez-toc-section\" id=\"Kokkuvote\"><\/span>Kokkuv\u00f5te<span class=\"ez-toc-section-end\"><\/span><\/h2>\n\n\n\n<p>S\u00fcsteemiarendusprojektide sujuva kulgemise nimel v\u00f5ivad infrastruktuuriga seotud keskkonna ettevalmistamisest tulenevad probleemid kergesti j\u00e4\u00e4da m\u00e4rkamatuks. Infrastruktuuriprobleemidele t\u00e4helepanu p\u00f6\u00f6ramine v\u00f5ib olla tehnoloogiaekspertidele m\u00f5eldes \u00fcsna koormav. Siiski v\u00f5ib \u00f6elda, et selliste probleemide ennetamise meetmed, nagu &#8220;spetsifikatsioonide selgitamine \/ muudatuste haldamise p\u00f5hjalikkus&#8221;, &#8220;rollide \/ vastutusalade selgitamine&#8221; ja &#8220;projekti suurusele ja eelarvele vastava arendusmudeli valimine&#8221;, on p\u00f5hiliste meetmete j\u00e4tkuks. Ettev\u00f5tte \u00f5igusn\u00f5ustajad peaksid esmalt m\u00f5istma, et infrastruktuuriprobleemide puhul on ennetava \u00f5iguse alused t\u00e4iesti rakendatavad. Lisaks, kui olete IT-spetsialist, on oluline m\u00f5ista, et infrastruktuuriprobleemid v\u00f5ivad p\u00f5hjustada projekti t\u00f5siseid probleeme, ja on oluline sujuvalt t\u00f6\u00f6d juhtida.<\/p>\n","protected":false},"excerpt":{"rendered":"<p>Ettev\u00f5tetes kasutatavad IT-s\u00fcsteemid luuakse teatud m\u00f5ttes spetsifikatsioonide ja disainidokumentide koostamise ning nende sisu kajastava l\u00e4htekoodi kirjutamise kaudu. Kuid s\u00fcsteem ei toimi tegelikult [&hellip;]<\/p>\n","protected":false},"author":32,"featured_media":64584,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[16],"tags":[19,31],"acf":[],"_links":{"self":[{"href":"https:\/\/monolith.law\/et\/wp-json\/wp\/v2\/posts\/61317"}],"collection":[{"href":"https:\/\/monolith.law\/et\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/monolith.law\/et\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/monolith.law\/et\/wp-json\/wp\/v2\/users\/32"}],"replies":[{"embeddable":true,"href":"https:\/\/monolith.law\/et\/wp-json\/wp\/v2\/comments?post=61317"}],"version-history":[{"count":2,"href":"https:\/\/monolith.law\/et\/wp-json\/wp\/v2\/posts\/61317\/revisions"}],"predecessor-version":[{"id":64585,"href":"https:\/\/monolith.law\/et\/wp-json\/wp\/v2\/posts\/61317\/revisions\/64585"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/monolith.law\/et\/wp-json\/wp\/v2\/media\/64584"}],"wp:attachment":[{"href":"https:\/\/monolith.law\/et\/wp-json\/wp\/v2\/media?parent=61317"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/monolith.law\/et\/wp-json\/wp\/v2\/categories?post=61317"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/monolith.law\/et\/wp-json\/wp\/v2\/tags?post=61317"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}