{"id":61452,"date":"2023-12-07T14:39:42","date_gmt":"2023-12-07T05:39:42","guid":{"rendered":"https:\/\/monolith.law\/sv\/?p=61452"},"modified":"2024-02-01T13:40:29","modified_gmt":"2024-02-01T04:40:29","slug":"contractcheck-and-debug","status":"publish","type":"post","link":"https:\/\/monolith.law\/sv\/it\/contractcheck-and-debug","title":{"rendered":"Likheterna mellan kontraktsgranskning och fels\u00f6kning f\u00f6rklaras av en advokat som tidigare var IT-ingenj\u00f6r"},"content":{"rendered":"\n<p>K\u00e4rnan i det s\u00e5 kallade &#8220;f\u00f6retagets r\u00e5dgivande advokats&#8221; arbete \u00e4r att kontrollera och korrigera kontrakt som f\u00f6retaget dagligen ing\u00e5r med klienter och aff\u00e4rspartners. Och dessa kontroller och korrigeringar kan bara utf\u00f6ras till fullo av n\u00e5gon som \u00e4r v\u00e4l insatt i b\u00e5de lagstiftningen och det specifika aff\u00e4rsomr\u00e5det. Jag kommer att f\u00f6rklara varf\u00f6r detta \u00e4r fallet.<\/p>\n\n\n\n<p>Observera dock att f\u00f6ljande f\u00f6rklaring kan vara sv\u00e5r att f\u00f6rst\u00e5 f\u00f6r dem som inte har erfarenhet av ingenj\u00f6rsarbete eller programmering. Monolith Law Office \u00e4r en advokatbyr\u00e5 ledd av en f\u00f6re detta IT-ingenj\u00f6r med f\u00f6retagsledningserfarenhet. Detta \u00e4r strikt sett en artikel som f\u00f6rklarar kontraktskontroll och korrigeringar f\u00f6r f\u00f6retagsledare med erfarenhet av ingenj\u00f6rsarbete eller programmering, fr\u00e5n perspektivet av en advokatbyr\u00e5 ledd av en f\u00f6re detta IT-ingenj\u00f6r och f\u00f6retagsledare.<\/p>\n\n\n\n<p>Med denna positionering i \u00e5tanke, \u00e4r kontraktskontroll och korrigeringar liknande arbete som det s\u00e5 kallade &#8220;debugging&#8221;.<\/p>\n\n\n\n<ol>\n<li>Vad \u00e4r en &#8220;bug&#8221; fr\u00e5n b\u00f6rjan?<\/li>\n\n\n\n<li>Vad inneb\u00e4r &#8220;debugging&#8221;?<\/li>\n\n\n\n<li>Hur definierar ett kontrakt en algoritm?<\/li>\n\n\n\n<li>Vad inneb\u00e4r det att korrigera ett kontrakt?<\/li>\n<\/ol>\n\n\n\n<p>Jag kommer att b\u00f6rja med att f\u00f6rklara saker som kan tyckas sj\u00e4lvklara f\u00f6r ingenj\u00f6rer, men jag kommer att f\u00f6rklara dem i f\u00f6ljande ordning.<\/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\/sv\/it\/contractcheck-and-debug\/#Vad_ar_%E2%80%9Cbugg%E2%80%9D_och_%E2%80%9Cfelsokning%E2%80%9D\" title=\"Vad \u00e4r &#8220;bugg&#8221; och &#8220;fels\u00f6kning&#8221;?\">Vad \u00e4r &#8220;bugg&#8221; och &#8220;fels\u00f6kning&#8221;?<\/a><ul class='ez-toc-list-level-3'><li class='ez-toc-heading-level-3'><a class=\"ez-toc-link ez-toc-heading-2\" href=\"https:\/\/monolith.law\/sv\/it\/contractcheck-and-debug\/#En_bugg_ar_inte_ett_%E2%80%9CPC-fel%E2%80%9D\" title=\"En bugg \u00e4r inte ett &#8220;PC-fel&#8221;\">En bugg \u00e4r inte ett &#8220;PC-fel&#8221;<\/a><\/li><li class='ez-toc-page-1 ez-toc-heading-level-3'><a class=\"ez-toc-link ez-toc-heading-3\" href=\"https:\/\/monolith.law\/sv\/it\/contractcheck-and-debug\/#Varfor_uppstar_%E2%80%9Coforutsedda_beteenden%E2%80%9D\" title=\"Varf\u00f6r uppst\u00e5r &#8220;of\u00f6rutsedda beteenden&#8221;?\">Varf\u00f6r uppst\u00e5r &#8220;of\u00f6rutsedda beteenden&#8221;?<\/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\/sv\/it\/contractcheck-and-debug\/#Att_overvaga_%E2%80%9Com_ovantade_handelser_kan_intraffa%E2%80%9D\" title=\"Att \u00f6verv\u00e4ga &#8220;om ov\u00e4ntade h\u00e4ndelser kan intr\u00e4ffa&#8221;\">Att \u00f6verv\u00e4ga &#8220;om ov\u00e4ntade h\u00e4ndelser kan intr\u00e4ffa&#8221;<\/a><\/li><li class='ez-toc-page-1 ez-toc-heading-level-3'><a class=\"ez-toc-link ez-toc-heading-5\" href=\"https:\/\/monolith.law\/sv\/it\/contractcheck-and-debug\/#Vad_innebar_%E2%80%9Cfelsokning%E2%80%9D\" title=\"Vad inneb\u00e4r &#8220;fels\u00f6kning&#8221;?\">Vad inneb\u00e4r &#8220;fels\u00f6kning&#8221;?<\/a><\/li><\/ul><\/li><li class='ez-toc-page-1 ez-toc-heading-level-2'><a class=\"ez-toc-link ez-toc-heading-6\" href=\"https:\/\/monolith.law\/sv\/it\/contractcheck-and-debug\/#Vad_innebar_det_att_kontrollera_ett_kontrakt\" title=\"Vad inneb\u00e4r det att kontrollera ett kontrakt?\">Vad inneb\u00e4r det att kontrollera ett kontrakt?<\/a><ul class='ez-toc-list-level-3'><li class='ez-toc-heading-level-3'><a class=\"ez-toc-link ez-toc-heading-7\" href=\"https:\/\/monolith.law\/sv\/it\/contractcheck-and-debug\/#Kontraktet_beskriver_inte_hela_algoritmen\" title=\"Kontraktet beskriver inte hela algoritmen\">Kontraktet beskriver inte hela algoritmen<\/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\/sv\/it\/contractcheck-and-debug\/#Kontrakt_kan_%E2%80%98skriva_over%E2%80%99_principer_som_civilratten\" title=\"Kontrakt kan &#8216;skriva \u00f6ver&#8217; principer som civilr\u00e4tten\">Kontrakt kan &#8216;skriva \u00f6ver&#8217; principer som civilr\u00e4tten<\/a><\/li><li class='ez-toc-page-1 ez-toc-heading-level-3'><a class=\"ez-toc-link ez-toc-heading-9\" href=\"https:\/\/monolith.law\/sv\/it\/contractcheck-and-debug\/#Om_man_inte_kan_forutse_framtida_handelser_kan_man_inte_%E2%80%9Cfelsoka%E2%80%9D\" title=\"Om man inte kan f\u00f6rutse framtida h\u00e4ndelser kan man inte &#8220;fels\u00f6ka&#8221;\">Om man inte kan f\u00f6rutse framtida h\u00e4ndelser kan man inte &#8220;fels\u00f6ka&#8221;<\/a><\/li><li class='ez-toc-page-1 ez-toc-heading-level-3'><a class=\"ez-toc-link ez-toc-heading-10\" href=\"https:\/\/monolith.law\/sv\/it\/contractcheck-and-debug\/#Om_nagot_ar_%E2%80%9Coforutsett%E2%80%9D_baseras_ocksa_pa_ledningsbeslut\" title=\"Om n\u00e5got \u00e4r &#8220;of\u00f6rutsett&#8221; baseras ocks\u00e5 p\u00e5 ledningsbeslut\">Om n\u00e5got \u00e4r &#8220;of\u00f6rutsett&#8221; baseras ocks\u00e5 p\u00e5 ledningsbeslut<\/a><\/li><\/ul><\/li><li class='ez-toc-page-1 ez-toc-heading-level-2'><a class=\"ez-toc-link ez-toc-heading-11\" href=\"https:\/\/monolith.law\/sv\/it\/contractcheck-and-debug\/#Sammanfattning\" title=\"Sammanfattning\">Sammanfattning<\/a><\/li><li class='ez-toc-page-1 ez-toc-heading-level-2'><a class=\"ez-toc-link ez-toc-heading-12\" href=\"https:\/\/monolith.law\/sv\/it\/contractcheck-and-debug\/#Information_om_kontraktsskapande_och_granskning_av_var_byra\" title=\"Information om kontraktsskapande och granskning av v\u00e5r byr\u00e5 \">Information om kontraktsskapande och granskning av v\u00e5r byr\u00e5 <\/a><\/li><\/ul><\/nav><\/div>\n<h2 class=\"wp-block-heading\"><span class=\"ez-toc-section\" id=\"Vad_ar_%E2%80%9Cbugg%E2%80%9D_och_%E2%80%9Cfelsokning%E2%80%9D\"><\/span>Vad \u00e4r &#8220;bugg&#8221; och &#8220;fels\u00f6kning&#8221;?<span class=\"ez-toc-section-end\"><\/span><\/h2>\n\n\n\n<h3 class=\"wp-block-heading\"><span class=\"ez-toc-section\" id=\"En_bugg_ar_inte_ett_%E2%80%9CPC-fel%E2%80%9D\"><\/span>En bugg \u00e4r inte ett &#8220;PC-fel&#8221;<span class=\"ez-toc-section-end\"><\/span><\/h3>\n\n\n\n<p>N\u00e4r vi talar om en &#8220;bugg&#8221; kan vissa kanske f\u00f6rest\u00e4lla sig en situation d\u00e4r r\u00f6k kommer ut fr\u00e5n datorn medan de arbetar p\u00e5 den och sk\u00e4rmen visar konstiga tecken&#8230; Men i grund och botten g\u00f6r en dator bara vad den blir tillsagd att g\u00f6ra. Detta g\u00e4ller \u00e4ven n\u00e4r en bugg uppst\u00e5r. Med andra ord \u00e4r en &#8220;bugg&#8221;:<\/p>\n\n\n\n<ul>\n<li>Trots att datorn g\u00f6r som den blivit tillsagd,<\/li>\n\n\n\n<li>\u00c4r dess beteende &#8220;ov\u00e4ntat&#8221; f\u00f6r anv\u00e4ndaren<\/li>\n<\/ul>\n\n\n\n<p>Detta \u00e4r fenomenet vi kallar f\u00f6r en bugg.<\/p>\n\n\n\n<h3 class=\"wp-block-heading\"><span class=\"ez-toc-section\" id=\"Varfor_uppstar_%E2%80%9Coforutsedda_beteenden%E2%80%9D\"><\/span>Varf\u00f6r uppst\u00e5r &#8220;of\u00f6rutsedda beteenden&#8221;?<span class=\"ez-toc-section-end\"><\/span><\/h3>\n\n\n\n<p>L\u00e5t oss till exempel t\u00e4nka p\u00e5 buggen &#8220;genom v\u00e4ggen&#8221; i ett Mario-typ actionspel.<\/p>\n\n\n\n<p>Marios hopp \u00e4r en andragradsekvation. Acceleration, hastighet, koordinater. Men, \u00e4ven om det \u00e4r en s\u00e5 kallad andragradsekvation, kan du till exempel dela upp X o\u00e4ndligt fint, som &#8220;Vad \u00e4r Y n\u00e4r X=1.76582?&#8221;, men i TV-spel kan du inte dela upp tiden o\u00e4ndligt fint. Det beror p\u00e5 att sk\u00e4rmen bara byter (till exempel) 30 g\u00e5nger per sekund. D\u00e4rf\u00f6r, kan man s\u00e4ga att Mario &#8220;teleporterar&#8221; 30 g\u00e5nger per sekund.<\/p>\n\n\n\n<p>I detta sammanhang, om vi till exempel t\u00e4nker p\u00e5 ett scenario d\u00e4r &#8220;Mario studsar tillbaka eftersom det finns en v\u00e4gg i luften n\u00e4r han hoppar&#8221;, skulle det vara ett scenario d\u00e4r<\/p>\n\n\n\n<ol>\n<li>Mario var i luften ett \u00f6gonblick tidigare, men<\/li>\n\n\n\n<li>N\u00e4sta \u00f6gonblick, blir Marios koordinater inne i v\u00e4ggen<\/li>\n<\/ol>\n\n\n\n<p>Det \u00e4r s\u00e5dana fall.<\/p>\n\n\n\n<figure class=\"wp-block-image\"><img decoding=\"async\" src=\"https:\/\/monolith.law\/wp-content\/uploads\/2019\/09\/contractcheck1-1024x600.png\" alt=\"\" class=\"wp-image-5183\" \/><\/figure>\n\n\n\n<p>I s\u00e5dana fall kan man bed\u00f6ma att &#8220;Mario tr\u00e4ffade en v\u00e4gg i luften medan han hoppade&#8221;. D\u00e4rf\u00f6r, om vi uttrycker det i naturligt spr\u00e5k,<\/p>\n\n\n\n<p class=\"has-text-align-center has-very-light-gray-background-color has-background\">Om Marios koordinater \u00e4r inne i v\u00e4ggen, utf\u00f6r en studsning (\u203b1)<\/p>\n\n\n\n<p>Om du skriver ett program som detta, kan du realisera en process d\u00e4r &#8220;Mario studsar tillbaka eftersom det finns en v\u00e4gg i luften n\u00e4r han hoppar&#8221;.<\/p>\n\n\n\n<p>\u203b1, s\u00e5 l\u00e4nge du skriver som ovan, ser det ut att vara korrekt. Och faktiskt, under &#8220;vissa f\u00f6ruts\u00e4ttningar&#8221; \u00e4r denna process korrekt.<\/p>\n\n\n\n<p>Men om du t\u00e4nker noga, kan f\u00f6ljande situation ocks\u00e5 uppst\u00e5 (\u203b2).<\/p>\n\n\n\n<figure class=\"wp-block-image\"><img decoding=\"async\" src=\"https:\/\/monolith.law\/wp-content\/uploads\/2019\/09\/contractcheck2-1024x638.png\" alt=\"\" class=\"wp-image-5184\" \/><\/figure>\n\n\n\n<p>I detta fall finns det ingen stund d\u00e5 &#8220;Marios koordinater \u00e4r inne i v\u00e4ggen&#8221;, och d\u00e4rf\u00f6r kommer ingen studsning att utf\u00f6ras, och Mario kommer att glida genom v\u00e4ggen.<\/p>\n\n\n\n<p>Detta \u00e4r ett exempel p\u00e5 en &#8220;bugg&#8221;. \u00c4ven om en &#8220;genom v\u00e4ggen-bugg&#8221; uppst\u00e5r av dessa sk\u00e4l, betyder det inte att datorn \u00e4r trasig. Datorn utf\u00f6r bara det beteende den har blivit tillsagd att g\u00f6ra, och det \u00e4r m\u00e4nniskor som bed\u00f6mer detta beteende som &#8220;of\u00f6rutsedda&#8221; eller &#8220;buggar&#8221;. Och dessa &#8220;buggar&#8221; uppst\u00e5r eftersom algoritmen inte \u00e4r l\u00e4mplig.<\/p>\n\n\n\n<h3 class=\"wp-block-heading\"><span class=\"ez-toc-section\" id=\"Att_overvaga_%E2%80%9Com_ovantade_handelser_kan_intraffa%E2%80%9D\"><\/span>Att \u00f6verv\u00e4ga &#8220;om ov\u00e4ntade h\u00e4ndelser kan intr\u00e4ffa&#8221;<span class=\"ez-toc-section-end\"><\/span><\/h3>\n\n\n\n<p>Men, om det faktiskt uppst\u00e5r en &#8220;genom-v\u00e4ggen&#8221; h\u00e4ndelse under spelets g\u00e5ng, som n\u00e4mnts ovan, \u00e4r det oklart om man bara t\u00e4nker p\u00e5 det abstrakt. Om en &#8220;genom-v\u00e4ggen&#8221; h\u00e4ndelse kan intr\u00e4ffa eller inte beror p\u00e5:<\/p>\n\n\n\n<ul>\n<li>Hur stark \u00e4r Marios hoppkraft (startfart), finns det n\u00e5gra f\u00f6rem\u00e5l som \u00f6kar hoppkraften?<\/li>\n\n\n\n<li>Hur tjock \u00e4r v\u00e4ggen i dess tunnaste tillst\u00e5nd?<\/li>\n<\/ul>\n\n\n\n<p>Det beror p\u00e5 dessa villkor. Beroende p\u00e5 om det finns en situation som \u203b2 under dessa villkor, \u00e4r det vad det handlar om. Om \u203b2 inte kan intr\u00e4ffa, d\u00e5 finns det inget problem med \u203b1 programmet.<\/p>\n\n\n\n<h3 class=\"wp-block-heading\"><span class=\"ez-toc-section\" id=\"Vad_innebar_%E2%80%9Cfelsokning%E2%80%9D\"><\/span>Vad inneb\u00e4r &#8220;fels\u00f6kning&#8221;?<span class=\"ez-toc-section-end\"><\/span><\/h3>\n\n\n\n<p>F\u00f6ljaktligen, f\u00f6r att utf\u00f6ra &#8220;fels\u00f6kning&#8221;, det vill s\u00e4ga att hitta och r\u00e4tta till buggar, kr\u00e4vs f\u00f6ljande process:<\/p>\n\n\n\n<ol>\n<li>Att f\u00f6rst\u00e5 vilken typ av algoritm programmet \u00e4r (ovanst\u00e5ende \u203b1 \u00e4r naturligt spr\u00e5k, men eftersom program faktiskt \u00e4r skrivna p\u00e5 ett unikt spr\u00e5k, \u00e4r det sv\u00e5rt att f\u00f6rst\u00e5 dem)<\/li>\n\n\n\n<li>Att \u00f6verv\u00e4ga under vilka f\u00f6rh\u00e5llanden programmet fungerar (unders\u00f6ka saker som hoppkraft och v\u00e4ggtjocklek)<\/li>\n\n\n\n<li>Att \u00f6verv\u00e4ga om det finns n\u00e5got ov\u00e4ntat beteende<\/li>\n<\/ol>\n\n\n\n<p>Detta \u00e4r den process som kr\u00e4vs.<\/p>\n\n\n\n<h2 class=\"wp-block-heading\"><span class=\"ez-toc-section\" id=\"Vad_innebar_det_att_kontrollera_ett_kontrakt\"><\/span>Vad inneb\u00e4r det att kontrollera ett kontrakt?<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\/09\/shutterstock_334043420-1024x684.jpg\" alt=\"\" class=\"wp-image-5188\" \/><figcaption class=\"wp-element-caption\">Kontraktskontroll har likheter med &#8220;fels\u00f6kning&#8221;<\/figcaption><\/figure>\n\n\n\n<p>Kontraktskontroll liknar denna process. Ett kontrakt \u00e4r i grunden ett dokument som reglerar r\u00e4ttigheter och skyldigheter f\u00f6r parterna, kallade A och B, med tanke p\u00e5 potentiella framtida h\u00e4ndelser. Det best\u00e4mmer hur b\u00e5da parter ska agera under dessa omst\u00e4ndigheter. I den meningen kan det beskrivas som ett &#8220;program som reglerar den verkliga v\u00e4rlden&#8221;. Till exempel,<\/p>\n\n\n\n<p class=\"has-text-align-center has-very-light-gray-background-color has-background\">Om situationen \u25cf\u25cf uppst\u00e5r, ska A betala B en miljon yen i skadest\u00e5nd.<\/p>\n\n\n\n<p>S\u00e5dana kontrakt definierar villkor och effekter f\u00f6r framtida h\u00e4ndelser.<\/p>\n\n\n\n<p>Och att verifiera om det finns n\u00e5gra problem med detta &#8220;program som reglerar den verkliga v\u00e4rlden&#8221;, och att korrigera dem om det finns n\u00e5gra, \u00e4r en process som n\u00f6dv\u00e4ndigtvis liknar &#8220;fels\u00f6kning&#8221;.<\/p>\n\n\n\n<h3 class=\"wp-block-heading\"><span class=\"ez-toc-section\" id=\"Kontraktet_beskriver_inte_hela_algoritmen\"><\/span>Kontraktet beskriver inte hela algoritmen<span class=\"ez-toc-section-end\"><\/span><\/h3>\n\n\n\n<p>Det finns dock en punkt i &#8220;kontrakt&#8221; som kan vara sv\u00e5rt att f\u00f6rst\u00e5 f\u00f6r de som inte specialiserar sig p\u00e5 lagar, men det \u00e4r extremt viktigt. Kontraktet definierar endast en &#8220;del&#8221; av algoritmen som reglerar mellan parterna. Med andra ord, genom att bara l\u00e4sa kontraktet kan du inte veta hela bilden av vilken algoritm du och den andra parten regleras under.<\/p>\n\n\n\n<p>Till exempel, n\u00e4r du k\u00f6per en begagnad CD i en butik, ing\u00e5r butiken och kunden inte n\u00e5got som ett &#8220;k\u00f6pekontrakt&#8221;, men om det finns en repa p\u00e5 CD-skivan som g\u00f6r den ospelbar p\u00e5 spelaren, vill du klaga till butiken, och du f\u00f6rv\u00e4ntar dig att butiken ska svara p\u00e5 det. Detta \u00e4r inte bara en fr\u00e5ga om &#8220;det \u00e4r en tj\u00e4nstindustri&#8221;, teoretiskt sett,<\/p>\n\n\n\n<ol>\n<li>\u00c4ven utan ett kontrakt, har ett k\u00f6peavtal ing\u00e5tts<\/li>\n\n\n\n<li>Civilr\u00e4tten (Japansk Civilr\u00e4tt) stipulerar att s\u00e4ljaren har ett felansvar f\u00f6r f\u00f6rs\u00e4ljningsavtal f\u00f6r begagnade CD-skivor och liknande (kallade &#8220;specifika varor&#8221;)<\/li>\n\n\n\n<li>D\u00e4rf\u00f6r k\u00f6r algoritmen som definieras av civilr\u00e4tten mellan butiken och kunden, och butiken har ett felansvar<\/li>\n<\/ol>\n\n\n\n<p>Det \u00e4r logiken. Och ett &#8220;kontrakt&#8221; \u00e4r n\u00e5got som skriver \u00f6ver algoritmen som definieras av lagar som civilr\u00e4tten. Till exempel, om det finns ett kontrakt mellan butiken och kunden som s\u00e4ger &#8220;vi accepterar inte efterf\u00f6ljande klagom\u00e5l om n\u00e5gra defekter p\u00e5 CD-skivor&#8221;,<\/p>\n\n\n\n<ol>\n<li>Ett k\u00f6peavtal har ing\u00e5tts<\/li>\n\n\n\n<li>Civilr\u00e4tten stipulerar att s\u00e4ljaren har ett felansvar f\u00f6r detta avtal<\/li>\n\n\n\n<li>Men enligt best\u00e4mmelserna i kontraktet skrivs princip 2 \u00f6ver, och butiken har inget felansvar<\/li>\n<\/ol>\n\n\n\n<p>Det \u00e4r s\u00e5 det blir.<\/p>\n\n\n\n<h3 class=\"wp-block-heading\"><span class=\"ez-toc-section\" id=\"Kontrakt_kan_%E2%80%98skriva_over%E2%80%99_principer_som_civilratten\"><\/span>Kontrakt kan &#8216;skriva \u00f6ver&#8217; principer som civilr\u00e4tten<span class=\"ez-toc-section-end\"><\/span><\/h3>\n\n\n\n<figure class=\"wp-block-image\"><img decoding=\"async\" src=\"https:\/\/monolith.law\/wp-content\/uploads\/2019\/09\/shutterstock_336766328-1024x702.jpg\" alt=\"\" class=\"wp-image-5189\" \/><figcaption class=\"wp-element-caption\">Att bara l\u00e4sa kontraktet ger inte en fullst\u00e4ndig bild av &#8216;algoritmen&#8217;<\/figcaption><\/figure>\n\n\n\n<p>Detta g\u00e4ller \u00e4ven f\u00f6r kontrakt som ing\u00e5s mellan f\u00f6retag, till exempel inom systemutveckling. Om ett kontrakt f\u00f6r systemutveckling p\u00e5 uppdrag har ing\u00e5tts mellan part A och B, g\u00e4ller f\u00f6ljande:<\/p>\n\n\n\n<ol>\n<li>Genom att ing\u00e5 kontraktet \u00e4r det klart att ett uppdragskontrakt har ing\u00e5tts<\/li>\n\n\n\n<li>I fallet med ett uppdragskontrakt uppst\u00e5r ett ansvar f\u00f6r felgaranti f\u00f6r den part som tar emot uppdraget enligt civilr\u00e4tten<\/li>\n\n\n\n<li>Om det finns en best\u00e4mmelse om felgaranti i kontraktet, skriver den best\u00e4mmelsen \u00f6ver principen i civilr\u00e4tten. Till exempel, om det finns en klausul om felgaranti f\u00f6r en l\u00e4ngre period \u00e4n civilr\u00e4ttens princip, blir den perioden giltig<\/li>\n<\/ol>\n\n\n\n<p>Detta \u00e4r strukturen. Med andra ord, \u00e4ven om det inte finns n\u00e5gon s\u00e4rskild best\u00e4mmelse om felgaranti i kontraktet, uppst\u00e5r ett felgaranti ansvar.<\/p>\n\n\n\n<p>Detta \u00e4r inte begr\u00e4nsat till uppdrag och systemutveckling, utan \u00e4r en allm\u00e4n teori om alla kontrakt som f\u00f6retag ing\u00e5r, s\u00e5som aktie\u00f6verl\u00e5telser, finansiering med skuld (l\u00e5n f\u00f6r konsumtion av pengar), anst\u00e4llning och aktieutgivning.<\/p>\n\n\n\n<p>D\u00e4rf\u00f6r kan du inte f\u00e5 en fullst\u00e4ndig bild av &#8216;algoritmen&#8217; som reglerar relationen mellan den andra parten och ditt f\u00f6retag genom att bara l\u00e4sa kontraktet. F\u00f6r att f\u00e5 en fullst\u00e4ndig bild m\u00e5ste du f\u00f6rst\u00e5 &#8216;standardalgoritmen&#8217; som fastst\u00e4lls av lagar som civilr\u00e4tten. Kontraktet \u00e4r bara n\u00e5got som skriver \u00f6ver den &#8216;standardalgoritmen&#8217;.<\/p>\n\n\n\n<h3 class=\"wp-block-heading\"><span class=\"ez-toc-section\" id=\"Om_man_inte_kan_forutse_framtida_handelser_kan_man_inte_%E2%80%9Cfelsoka%E2%80%9D\"><\/span>Om man inte kan f\u00f6rutse framtida h\u00e4ndelser kan man inte &#8220;fels\u00f6ka&#8221;<span class=\"ez-toc-section-end\"><\/span><\/h3>\n\n\n\n<p>Att bara f\u00f6rst\u00e5 en algoritm r\u00e4cker inte f\u00f6r att kunna verifiera om &#8220;ov\u00e4ntade beteenden inte kommer att uppst\u00e5 med den algoritmen&#8221;. Precis som med &#8220;buggar&#8221; i spel, \u00e4r algoritmer i grunden abstrakta, och om man inte kan f\u00f6rutse vilka h\u00e4ndelser som kommer att intr\u00e4ffa i framtiden, kan man inte verifiera om &#8220;ov\u00e4ntade beteenden inte kommer att uppst\u00e5 n\u00e4r s\u00e5dana h\u00e4ndelser intr\u00e4ffar&#8221;.<\/p>\n\n\n\n<p>Detta \u00e4r s\u00e4rskilt problematiskt n\u00e4r det g\u00e4ller nya produkter som appar eller tj\u00e4nster, eller nya aff\u00e4rsmodeller. N\u00e4r man utvecklar en verksamhet med s\u00e5dana produkter eller modeller, vad kan d\u00e5 h\u00e4nda i framtiden? Detta \u00e4r sv\u00e5rt att f\u00f6rutse om man inte har kunskap inom det relevanta omr\u00e5det. Dessutom, s\u00e4rskilt i f\u00f6retagskontrakt, agerar b\u00e5de det andra f\u00f6retaget och ditt eget f\u00f6retag under vissa ekonomiska rationaliteter, s\u00e5 f\u00f6r att f\u00f6rutse framtida h\u00e4ndelser och det andra f\u00f6retagets handlingar som leder till dem, beh\u00f6ver man ocks\u00e5 en spelteoretisk tankeg\u00e5ng i f\u00f6retagsledningen.<\/p>\n\n\n\n<h3 class=\"wp-block-heading\"><span class=\"ez-toc-section\" id=\"Om_nagot_ar_%E2%80%9Coforutsett%E2%80%9D_baseras_ocksa_pa_ledningsbeslut\"><\/span>Om n\u00e5got \u00e4r &#8220;of\u00f6rutsett&#8221; baseras ocks\u00e5 p\u00e5 ledningsbeslut<span class=\"ez-toc-section-end\"><\/span><\/h3>\n\n\n\n<p>Ytterligare, precis som det \u00e4r en m\u00e4nniska och inte en dator som best\u00e4mmer om en h\u00e4ndelse \u00e4r en &#8220;bugg&#8221;, \u00e4r det inte bara en ren juridisk fr\u00e5ga att avg\u00f6ra om en konsekvens som ett kontrakt medf\u00f6r \u00e4r &#8220;of\u00f6rutsett&#8221;, utan det \u00e4r ocks\u00e5 en fr\u00e5ga om ledningsbeslut.<\/p>\n\n\n\n<p>Till exempel, det kan realistiskt sett finnas fall d\u00e4r en algoritm som f\u00f6ljer &#8220;principerna i civilr\u00e4tten (japansk civil lag)&#8221; \u00e4r oacceptabel f\u00f6r en viss verksamhet i ett f\u00f6retag. \u00c4ven om detta avviker fr\u00e5n de tidigare exemplen, fastst\u00e4ller civilr\u00e4tten till exempel en standardalgoritm som s\u00e4ger att &#8220;omkontrakt av en entrepren\u00f6r \u00e4r ett kontraktsbrott&#8221;. Men det kan finnas fall d\u00e4r &#8220;f\u00f6r ett visst f\u00f6retag, \u00e4r det f\u00f6rv\u00e4ntat att en viss verksamhet naturligtvis kommer att anv\u00e4nda underleverant\u00f6rer&#8221;. I s\u00e5dana fall b\u00f6r det vara om\u00f6jligt att acceptera ett kontrakt d\u00e4r omkontrakt \u00e4r om\u00f6jligt, det vill s\u00e4ga<\/p>\n\n\n\n<ul>\n<li>ingenting \u00e4r uttryckligen angivet om m\u00f6jligheten till omkontrakt (i detta fall, som n\u00e4mnt ovan, till\u00e4mpas principerna i civilr\u00e4tten)<\/li>\n\n\n\n<li>det \u00e4r uttryckligen angivet att omkontrakt \u00e4r om\u00f6jligt<\/li>\n<\/ul>\n\n\n\n<p>\u00e4ven om det \u00e4r &#8220;enligt principerna i civilr\u00e4tten&#8221;.<\/p>\n\n\n\n<p>Det finns ocks\u00e5 alltid en risk i f\u00f6retagsledningen att &#8220;h\u00e5llas ansvarig om en viss h\u00e4ndelse intr\u00e4ffar&#8221;. Det finns i princip inga kontrakt som &#8220;inte inneb\u00e4r n\u00e5gon risk&#8221; f\u00f6r f\u00f6retaget. Om man ska acceptera den risken eller inte \u00e4r slutligen ett ledningsbeslut. Det \u00e4r f\u00f6retagsledaren som fattar ledningsbeslut, inte n\u00e5gon i en konsultativ position som en r\u00e5dgivande advokat, men konsulten b\u00f6r presentera tillr\u00e4cklig information f\u00f6r att ledaren ska kunna fatta ledningsbeslut,<\/p>\n\n\n\n<ul>\n<li>risker som inte beh\u00f6ver p\u00e5pekas varje g\u00e5ng<\/li>\n\n\n\n<li>risker som, om de accepteras, skulle inneb\u00e4ra ett betydande beslut f\u00f6r f\u00f6retaget och som kan kr\u00e4va m\u00f6ten etc.<\/li>\n<\/ul>\n\n\n\n<p>och de m\u00e5ste peka ut dessa med olika grader av betydelse. F\u00f6r att st\u00e4lla in dessa &#8220;grader av betydelse&#8221; kr\u00e4vs det, precis som i andra konsultomr\u00e5den, att advokaten som granskar kontraktet ocks\u00e5 har en viss k\u00e4nsla f\u00f6r &#8220;ledning&#8221;.<\/p>\n\n\n\n<h2 class=\"wp-block-heading\"><span class=\"ez-toc-section\" id=\"Sammanfattning\"><\/span>Sammanfattning<span class=\"ez-toc-section-end\"><\/span><\/h2>\n\n\n\n<p>S\u00e5ledes kan man s\u00e4ga att kontroll och korrigering av kontrakt huvudsakligen inneb\u00e4r f\u00f6ljande arbetsuppgifter:<\/p>\n\n\n\n<ol>\n<li>F\u00f6rst\u00e5 hur principerna i civilr\u00e4tten (Japansk civilr\u00e4tt) och liknande lagar har skrivits om av kontraktet, och vilket slags algoritm som har skapats som ett resultat<\/li>\n\n\n\n<li>\u00d6verv\u00e4ga vilka h\u00e4ndelser som kan intr\u00e4ffa i framtiden under denna algoritm<\/li>\n\n\n\n<li>Unders\u00f6ka om det finns n\u00e5got ov\u00e4ntat beteende som kan uppst\u00e5 i detta sammanhang<\/li>\n<\/ol>\n\n\n\n<p>Och var och en av dessa uppgifter:<\/p>\n\n\n\n<ol>\n<li>\u00c4r sv\u00e5rt att utf\u00f6ra utan en f\u00f6rst\u00e5else f\u00f6r lagen<\/li>\n\n\n\n<li>\u00c4r sv\u00e5rt att utf\u00f6ra utan en f\u00f6rst\u00e5else f\u00f6r inneh\u00e5llet i verksamheten som kontraktet reglerar, till exempel en app eller webbtj\u00e4nst, och aff\u00e4rsmodellen<\/li>\n\n\n\n<li>\u00c4r sv\u00e5rt att utf\u00f6ra utan en viss f\u00f6rst\u00e5else f\u00f6r f\u00f6retaget eller verksamheten och aff\u00e4rsinstinkter<\/li>\n<\/ol>\n\n\n\n<p>Det \u00e4r d\u00e4rf\u00f6r det \u00e4r s\u00e5.<\/p>\n\n\n\n<p>Kontroll och korrigering av kontrakt \u00e4r mycket &#8220;specialiserade&#8221; av dessa sk\u00e4l.<\/p>\n\n\n\n<h2 class=\"wp-block-heading\"><span class=\"ez-toc-section\" id=\"Information_om_kontraktsskapande_och_granskning_av_var_byra\"><\/span>Information om kontraktsskapande och granskning av v\u00e5r byr\u00e5 <span class=\"ez-toc-section-end\"><\/span><\/h2>\n\n\n\n<p> P\u00e5 Monolis juridiska byr\u00e5, som en advokatbyr\u00e5 med styrkor inom IT, internet och aff\u00e4rer, erbjuder vi tj\u00e4nster som att skapa och granska olika kontrakt till v\u00e5ra r\u00e5dgivande f\u00f6retag och klientf\u00f6retag. <\/p>\n\n\n\n<p> Om du \u00e4r intresserad, v\u00e4nligen se detaljerna nedan. <\/p>\n\n\n\n<p><a href=\"https:\/\/monolith.law\/contractcreation\" target=\"_blank\" rel=\"noreferrer noopener\">https:\/\/monolith.law\/contractcreation[ja]<\/a><\/p>\n","protected":false},"excerpt":{"rendered":"<p>K\u00e4rnan i det s\u00e5 kallade &#8220;f\u00f6retagets r\u00e5dgivande advokats&#8221; arbete \u00e4r att kontrollera och korrigera kontrakt som f\u00f6retaget dagligen ing\u00e5r med klienter och aff\u00e4rspartners. Och dessa kontroller [&hellip;]<\/p>\n","protected":false},"author":32,"featured_media":62825,"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\/sv\/wp-json\/wp\/v2\/posts\/61452"}],"collection":[{"href":"https:\/\/monolith.law\/sv\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/monolith.law\/sv\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/monolith.law\/sv\/wp-json\/wp\/v2\/users\/32"}],"replies":[{"embeddable":true,"href":"https:\/\/monolith.law\/sv\/wp-json\/wp\/v2\/comments?post=61452"}],"version-history":[{"count":2,"href":"https:\/\/monolith.law\/sv\/wp-json\/wp\/v2\/posts\/61452\/revisions"}],"predecessor-version":[{"id":62824,"href":"https:\/\/monolith.law\/sv\/wp-json\/wp\/v2\/posts\/61452\/revisions\/62824"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/monolith.law\/sv\/wp-json\/wp\/v2\/media\/62825"}],"wp:attachment":[{"href":"https:\/\/monolith.law\/sv\/wp-json\/wp\/v2\/media?parent=61452"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/monolith.law\/sv\/wp-json\/wp\/v2\/categories?post=61452"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/monolith.law\/sv\/wp-json\/wp\/v2\/tags?post=61452"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}