
{"id":92,"date":"2016-11-14T19:55:33","date_gmt":"2016-11-14T18:55:33","guid":{"rendered":"http:\/\/home.uia.no\/marign16\/?p=92"},"modified":"2016-11-14T19:55:33","modified_gmt":"2016-11-14T18:55:33","slug":"modul-5","status":"publish","type":"post","link":"https:\/\/home.uia.no\/marign16\/2016\/11\/14\/modul-5\/","title":{"rendered":"Modul 5"},"content":{"rendered":"<p><strong>Oppgave<\/strong><\/p>\n<p>Ta utgangspunkt i en beskrivelse av et system, sett fra brukerens perspektiv. Du kan bruke innledningen til et av eksemplene i l\u00e6reboka, eller du kan lage noen brukerhistorier for et eksempel du velger selv<\/p>\n<p>&nbsp;<\/p>\n<p>Bruk substantiv-verb-metoden til finne ut hvilke klasser og metoder du m\u00e5 ha for at systemet skal fungere. Ta med systembeskrivelsen og dokumentasjon av designet til foreleser eller hjelpel\u00e6rer for godkjenning.<\/p>\n<p>&nbsp;<\/p>\n<p><strong>Kravspesifikasjon<\/strong><\/p>\n<p><strong>Kassasystem for en butikk<\/strong><\/p>\n<p>Kassasystemet m\u00e5 ha mulighet for skanning av et ukjent antall varer, og m\u00e5 ogs\u00e5 h\u00e5ndtere retur av disse. Mulige betalingsm\u00e5ter m\u00e5 v\u00e6re kort, kontant og faktura. Etter en endt transaksjon skal en kvittering skrives ut.<\/p>\n<p>&nbsp;<\/p>\n<p>Kassen m\u00e5 ha mulighet for \u00e5 avbryte en handel, og m\u00e5 ogs\u00e5 ha mulighet til \u00e5 sjekke priser uten \u00e5 avbryte hele handelen. Systemet m\u00e5 ogs\u00e5 kunne h\u00e5ndtere gavekort, opptil flere typer. Systemet skal ogs\u00e5 gi en tilbakemelding med prisen n\u00e5r varene blir skannet.<\/p>\n<p>&nbsp;<\/p>\n<p><strong>Brukerhistorier:<\/strong><\/p>\n<p>P\u00e5l har kommet inn i butikken og \u00f8nsker \u00e5 reklamere p\u00e5 en vare, samtidig som han skal ha en ny.\u00a0 Kim tar imot kunden og bruker kassasystemet for \u00e5 gj\u00f8re dette.<\/p>\n<p>&nbsp;<\/p>\n<p>G\u00f8ril \u00f8nsker \u00e5 kj\u00f8pe en vare og legger denne p\u00e5 disken. Jon tar henne imot i kassen og bruker kassasystemet for \u00e5 fullf\u00f8re handelen.<\/p>\n<p>&nbsp;<\/p>\n<p>Per skal kj\u00f8pe en vare til sin bedrift, og \u00f8nsker derfor \u00e5 betale med en faktura. Tone mottar varen i kassen og bruker kassasystemet for \u00e5 fullf\u00f8re denne handelen.<\/p>\n<p>&nbsp;<\/p>\n<p><strong>Dokumentasjon:<\/strong><\/p>\n<p>Ved \u00e5 bruke verb\/substantiv metoden kommer vi frem til f\u00f8lgende klasser og metoder:<\/p>\n<p>Substantiv (Klasser)<\/p>\n<p>Kassasystem<\/p>\n<p>Vare<\/p>\n<p>Kort<\/p>\n<p>Kontant<\/p>\n<p>Faktura<\/p>\n<p>Transaksjon<\/p>\n<p>Kvittering<\/p>\n<p>Tilbakemelding<\/p>\n<p>&nbsp;<\/p>\n<p>Etter litt filtrering og endring av navn kom jeg frem til f\u00f8lgende:<\/p>\n<p>Kasse<\/p>\n<p>Korrterminal<\/p>\n<p>Betaling<\/p>\n<p>Skanner<\/p>\n<p>Display<\/p>\n<p><span style=\"font-weight: 300\">Metoder:<br \/>\nHer har jeg valgt \u00e5 bruke CRC-kort som et eksempel p\u00e5 noen av klassene.\u00a0<\/span><\/p>\n<p><span style=\"font-weight: 300\">(Trykk p\u00e5 bildet for \u00e5 f\u00e5 det st\u00f8rre)\u00a0<\/span><a href=\"http:\/\/home.uia.no\/marign16\/files\/2016\/11\/CRC-Modul-5.png\"><img loading=\"lazy\" decoding=\"async\" class=\"alignnone size-medium wp-image-93\" src=\"http:\/\/home.uia.no\/marign16\/files\/2016\/11\/CRC-Modul-5-300x156.png\" alt=\"\" width=\"300\" height=\"156\" srcset=\"https:\/\/home.uia.no\/marign16\/files\/2016\/11\/CRC-Modul-5-300x156.png 300w, https:\/\/home.uia.no\/marign16\/files\/2016\/11\/CRC-Modul-5-1024x534.png 1024w, https:\/\/home.uia.no\/marign16\/files\/2016\/11\/CRC-Modul-5-400x208.png 400w, https:\/\/home.uia.no\/marign16\/files\/2016\/11\/CRC-Modul-5-500x260.png 500w, https:\/\/home.uia.no\/marign16\/files\/2016\/11\/CRC-Modul-5.png 1456w\" sizes=\"(max-width: 300px) 100vw, 300px\" \/><\/a><\/p>\n<p>&nbsp;<\/p>\n<p>Etter implementasjon ble det funnet ut at objektet betaling trengte flere funksjoner. Vi kan da ordne dette med et kjent design pattern, nemlig en Decorator.<\/p>\n<p>Decorator-objektet legges \u00abrundt\u00bb det gamle objektet, og det er n\u00e5 Decorator objektet vi m\u00e5 snakke til n\u00e5r vi \u00f8nsker \u00e5 f\u00e5 tak i betaling-objektet. \u00d8nsker vi \u00e5 f\u00e5 tak i betaling-objektet n\u00e5 er vi n\u00f8dt til \u00e5 gj\u00f8re det igjennom Decorator-objektet.<\/p>\n","protected":false},"excerpt":{"rendered":"<p>Oppgave Ta utgangspunkt i en beskrivelse av et system, sett fra brukerens perspektiv. Du kan bruke innledningen til et av eksemplene i l\u00e6reboka, eller du kan lage noen brukerhistorier for et eksempel du velger selv &nbsp; Bruk substantiv-verb-metoden til finne &hellip; <a href=\"https:\/\/home.uia.no\/marign16\/2016\/11\/14\/modul-5\/\">Les videre <span class=\"meta-nav\">&rarr;<\/span><\/a><\/p>\n","protected":false},"author":1112,"featured_media":0,"comment_status":"closed","ping_status":"closed","sticky":false,"template":"","format":"standard","meta":{"_exactmetrics_skip_tracking":false,"_exactmetrics_sitenote_active":false,"_exactmetrics_sitenote_note":"","_exactmetrics_sitenote_category":0,"footnotes":""},"categories":[1],"tags":[],"_links":{"self":[{"href":"https:\/\/home.uia.no\/marign16\/wp-json\/wp\/v2\/posts\/92"}],"collection":[{"href":"https:\/\/home.uia.no\/marign16\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/home.uia.no\/marign16\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/home.uia.no\/marign16\/wp-json\/wp\/v2\/users\/1112"}],"replies":[{"embeddable":true,"href":"https:\/\/home.uia.no\/marign16\/wp-json\/wp\/v2\/comments?post=92"}],"version-history":[{"count":4,"href":"https:\/\/home.uia.no\/marign16\/wp-json\/wp\/v2\/posts\/92\/revisions"}],"predecessor-version":[{"id":97,"href":"https:\/\/home.uia.no\/marign16\/wp-json\/wp\/v2\/posts\/92\/revisions\/97"}],"wp:attachment":[{"href":"https:\/\/home.uia.no\/marign16\/wp-json\/wp\/v2\/media?parent=92"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/home.uia.no\/marign16\/wp-json\/wp\/v2\/categories?post=92"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/home.uia.no\/marign16\/wp-json\/wp\/v2\/tags?post=92"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}