{
    "componentChunkName": "component---src-templates-docs-js",
    "path": "/vecka1-2-planering-vision/dokumentation",
    "result": {"data":{"site":{"siteMetadata":{"title":"Linnéuniversitetet","language":"sv","courseCode":"1DV613"}},"mdx":{"fields":{"id":"76109ce6-d612-5e47-8afc-6cb52cf79a4d","title":"Dokumentation","slug":"/vecka1-2-planering-vision/dokumentation"},"body":"var _excluded = [\"components\"];\n\nfunction _extends() { _extends = Object.assign || function (target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i]; for (var key in source) { if (Object.prototype.hasOwnProperty.call(source, key)) { target[key] = source[key]; } } } return target; }; return _extends.apply(this, arguments); }\n\nfunction _objectWithoutProperties(source, excluded) { if (source == null) return {}; var target = _objectWithoutPropertiesLoose(source, excluded); var key, i; if (Object.getOwnPropertySymbols) { var sourceSymbolKeys = Object.getOwnPropertySymbols(source); for (i = 0; i < sourceSymbolKeys.length; i++) { key = sourceSymbolKeys[i]; if (excluded.indexOf(key) >= 0) continue; if (!Object.prototype.propertyIsEnumerable.call(source, key)) continue; target[key] = source[key]; } } return target; }\n\nfunction _objectWithoutPropertiesLoose(source, excluded) { if (source == null) return {}; var target = {}; var sourceKeys = Object.keys(source); var key, i; for (i = 0; i < sourceKeys.length; i++) { key = sourceKeys[i]; if (excluded.indexOf(key) >= 0) continue; target[key] = source[key]; } return target; }\n\n/* @jsxRuntime classic */\n\n/* @jsx mdx */\nvar _frontmatter = {\n  \"title\": \"Dokumentation\",\n  \"metaTitle\": \"1DV613 | Dokumentation\",\n  \"metaDescription\": \"metaDescription\",\n  \"order\": 4\n};\nvar layoutProps = {\n  _frontmatter: _frontmatter\n};\nvar MDXLayout = \"wrapper\";\nreturn function MDXContent(_ref) {\n  var components = _ref.components,\n      props = _objectWithoutProperties(_ref, _excluded);\n\n  return mdx(MDXLayout, _extends({}, layoutProps, props, {\n    components: components,\n    mdxType: \"MDXLayout\"\n  }), mdx(\"p\", null, \"Nedan f\\xF6ljer en genomg\\xE5ng av de dokument som du kan ha till hj\\xE4lp under ett projekt. Det listade inneh\\xE5llet \\xE4r ett f\\xF6rslag och det kan givetvis f\\xF6r\\xE4ndras beroende p\\xE5 projekt.\"), mdx(\"h3\", null, \"GitLab Wiki\"), mdx(\"p\", null, \"Dokumentationen skall uteslutande presenteras via dit projekts Wiki-sidor. Ett exempel p\\xE5 struktur tillsammans med beskrivande texter hittar du redan genererat i ditt projekts Wiki.\"), mdx(\"p\", null, \"Vill du veta mer om hur du arbetar med Gitlab-wikis s\\xE5 kan du l\\xE4sa om det h\\xE4r: \", mdx(\"a\", {\n    parentName: \"p\",\n    \"href\": \"https://docs.gitlab.com/ee/user/project/wiki/\"\n  }, \"Gitlab Docs/Projects/Wiki\")), mdx(\"p\", null, \"Observera att Wikin i sig \\xE4r ett eget repo s\\xE5 att du kan enkelt klona repot och arbeta med det lokalt om du s\\xE5 \\xF6nskar, eller s\\xE5 anv\\xE4nder du gr\\xE4nssnittet via GitLab. All dokumentation skrivs allts\\xE5 i md-format.\"), mdx(\"p\", null, \"T\\xE4nk p\\xE5 att g\\xF6ra f\\xF6rfarandet med dokumentationen s\\xE5 enkel som m\\xF6jligt s\\xE5 att du orkar h\\xE5lla den uppdaterad. T\\xE4nk ocks\\xE5 p\\xE5 att det \\xE4r uppmuntrat att f\\xF6r\\xE4ndra det som inte funkar i dokumentationen under projektets g\\xE5ng.\"), mdx(\"h2\", null, \"Varf\\xF6r dokumentation?\"), mdx(\"p\", null, \"Dokumentation \\xE4r helt enkelt ett s\\xE4tt att kommunicera med olika parter som Kund, Slutanv\\xE4ndare, Projektmedlemmar, Ledning etc. etc. Den effektivaste formen av kommunikation \\xE4r ansikte mot ansikte i avseende att snabbt kunna kommunicera ett budskap. En skriftlig dokumentation har dock flera andra f\\xF6rdelar:\"), mdx(\"ul\", null, mdx(\"li\", {\n    parentName: \"ul\"\n  }, mdx(\"strong\", {\n    parentName: \"li\"\n  }, \"Tidsbest\\xE4ndig:\"), \" Du beh\\xF6ver inte komma ih\\xE5g budskapet sj\\xE4lv hela tiden.\"), mdx(\"li\", {\n    parentName: \"ul\"\n  }, mdx(\"strong\", {\n    parentName: \"li\"\n  }, \"Masskommunikation:\"), \" Flera personer kan l\\xE4sa en skriftlig dokumentation samtidigt.\"), mdx(\"li\", {\n    parentName: \"ul\"\n  }, mdx(\"strong\", {\n    parentName: \"li\"\n  }, \"Rum:\"), \" Personerna beh\\xF6ver inte befinna sig p\\xE5 samma plats f\\xF6r att f\\xE5 ett budskap.\"), mdx(\"li\", {\n    parentName: \"ul\"\n  }, mdx(\"strong\", {\n    parentName: \"li\"\n  }, \"L\\xE5gteknologiskt:\"), \" Det kr\\xE4vs ingen speciellt avancerad teknologi f\\xF6r skriftlig kommunikation, papper och penna i det absolut enklaste fallet\"), mdx(\"li\", {\n    parentName: \"ul\"\n  }, mdx(\"strong\", {\n    parentName: \"li\"\n  }, \"Bilder:\"), \" En bild s\\xE4ger mer \\xE4n tusen ord...\")), mdx(\"p\", null, \"Det finns naturligtvis \\xE4ven nackdelar med skriftlig dokumentation, som du ska str\\xE4va efter att minimera.\"), mdx(\"ul\", null, mdx(\"li\", {\n    parentName: \"ul\"\n  }, mdx(\"strong\", {\n    parentName: \"li\"\n  }, \"Missf\\xF6rst\\xE5nd:\"), \" Kan den som l\\xE4ser budskapet f\\xF6rst\\xE5 det som det \\xE4r t\\xE4nkt? T\\xE4nk p\\xE5 vem som ska l\\xE4sa dokumentet och anpassa texten efter det, f\\xF6rklara ord i en ordlista.\"), mdx(\"li\", {\n    parentName: \"ul\"\n  }, mdx(\"strong\", {\n    parentName: \"li\"\n  }, \"Tungrott:\"), \" Konstiga mallar och ordbehandlingsprogram stj\\xE4lper ibland mer \\xE4n de hj\\xE4lper. Se till att dokumentationen \\xE4r l\\xE4ttarbetad.\"), mdx(\"li\", {\n    parentName: \"ul\"\n  }, mdx(\"strong\", {\n    parentName: \"li\"\n  }, \"Fel fokus:\"), \" Ibland misslyckat projekt f\\xF6r att de har koncentrerat sig f\\xF6r mycket p\\xE5 dokumentation och p\\xE5 fel dokumentation men inte lyckats leverera en fungerande produkt. Se till att den dokumentation du g\\xF6r \\xE4r till hj\\xE4lp f\\xF6r projektet.\"), mdx(\"li\", {\n    parentName: \"ul\"\n  }, mdx(\"strong\", {\n    parentName: \"li\"\n  }, \"\\\"Dokumentat\\xF6r\\\":\"), \" I vissa projekt r\\xE5kar n\\xE5gon av olika anledningar bli den som handhar all eller den st\\xF6rsta delen av dokumentationen. Detta skapar ofta en klyfta mellan dokumentationen och det verkliga systemet (se nedan) och kan \\xE4ven splittra projektgruppen i en utvecklande del och en administrativ del. Se till att alla i projektgruppen arbetar med dokumentationen och l\\xE5t den bli en levande del av projektarbetet. T.ex. n\\xE4r ett krav implementeras s\\xE5 \\xE4r det naturligt att detaljera kravet ytterligare samt skriva ett testfall.\"), mdx(\"li\", {\n    parentName: \"ul\"\n  }, mdx(\"strong\", {\n    parentName: \"li\"\n  }, \"Inte uppdaterad:\"), \" Det \\xE4r v\\xE4ldigt f\\xF6rvirrande om dokumentationen s\\xE4ger en sak och systemet beter sig p\\xE5 ett annat s\\xE4tt. Missvisande dokumentation \\xE4r ofta v\\xE4rre \\xE4n ingen dokumentation.\")), mdx(\"p\", null, \"En slutsats \\xE4r att f\\xF6r att dokumentation ska vara till nytta s\\xE5 m\\xE5ste man se till att den \\xE4r enkel att arbeta med och att man bara dokumenterar s\\xE5dant som \\xE4r absolut n\\xF6dv\\xE4ndigt samt att alla hj\\xE4lper till att h\\xE5lla dokumentationen uppdaterad och levande.\"));\n}\n;\nMDXContent.isMDXComponent = true;","tableOfContents":{"items":[{"items":[{"url":"#gitlab-wiki","title":"GitLab Wiki"}]},{"url":"#varför-dokumentation","title":"Varför dokumentation?"}]},"parent":{"relativePath":"vecka1-2-planering-vision/dokumentation.md"},"frontmatter":{"metaTitle":"1DV613 | Dokumentation","metaDescription":"metaDescription","fullWidth":null}},"allMdx":{"edges":[{"node":{"fields":{"slug":"/","title":"🎉 Välkommen till Mjukvaruutvecklingsprojekt (1DV613)"}}},{"node":{"fields":{"slug":"/video-loggar","title":"Videologgar"}}},{"node":{"fields":{"slug":"/studieguiden","title":"Studieguiden"}}},{"node":{"fields":{"slug":"/studieguiden/kommunikationsstrategi","title":"Kommunikationsstrategi"}}},{"node":{"fields":{"slug":"/studieguiden/kursledning","title":"Kursledning"}}},{"node":{"fields":{"slug":"/studieguiden/kursplan","title":"Kursplan och betyg"}}},{"node":{"fields":{"slug":"/studieguiden/litteratur","title":"Kurslitteratur"}}},{"node":{"fields":{"slug":"/studieguiden/schema","title":"Schema och deadlines"}}},{"node":{"fields":{"slug":"/studieguiden/studieanvisningar","title":"Studieanvisningar"}}},{"node":{"fields":{"slug":"/studieguiden/utvarderingar","title":"Kursvärderingar"}}},{"node":{"fields":{"slug":"/vecka1-2-planering-vision/dokumentation","title":"Dokumentation"}}},{"node":{"fields":{"slug":"/vecka1-2-planering-vision","title":"Vecka 1/2 - Planering och vision"}}},{"node":{"fields":{"slug":"/vecka1-2-planering-vision/todo","title":"📅 Att göra-lista"}}},{"node":{"fields":{"slug":"/vecka1-2-planering-vision/vision","title":"Projektvision"}}},{"node":{"fields":{"slug":"/vecka10-etik","title":"Vecka 10 - Etik & överlämning"}}},{"node":{"fields":{"slug":"/vecka10-etik/todo","title":"Att göra lista"}}},{"node":{"fields":{"slug":"/vecka3-krav-test/arbeta-i-projekt","title":"Att arbeta i projekt"}}},{"node":{"fields":{"slug":"/vecka3-krav-test","title":"Vecka 3 - Krav och testning"}}},{"node":{"fields":{"slug":"/vecka3-krav-test/testning","title":"Testning"}}},{"node":{"fields":{"slug":"/vecka3-krav-test/todo","title":"Att göra lista"}}},{"node":{"fields":{"slug":"/vecka3-krav-test/vecka3-krav-test","title":"Kravhantering"}}},{"node":{"fields":{"slug":"/vecka4-implementation/arkitektur","title":"Introduktion till mjukvaruarkitektur"}}},{"node":{"fields":{"slug":"/vecka4-implementation/docker-teori","title":"Introduktion till containers"}}},{"node":{"fields":{"slug":"/vecka4-implementation","title":"Vecka 4 - Implementation"}}},{"node":{"fields":{"slug":"/vecka4-implementation/just-task-it-docker","title":"Introduktion till Docker"}}},{"node":{"fields":{"slug":"/vecka4-implementation/todo","title":"Att göra lista"}}},{"node":{"fields":{"slug":"/vecka5-versionshantering","title":"Vecka 5 - Versionshantering"}}},{"node":{"fields":{"slug":"/vecka5-versionshantering/jobba-med-git","title":"Jobba med Git"}}},{"node":{"fields":{"slug":"/vecka5-versionshantering/todo","title":"Att göra lista"}}},{"node":{"fields":{"slug":"/vecka5-versionshantering/versionshantering","title":"Versionshantering"}}},{"node":{"fields":{"slug":"/vecka6-drift/docker-compose-teori","title":"Introduktion till Docker compose"}}},{"node":{"fields":{"slug":"/vecka6-drift","title":"Vecka 6 - Driftsättning"}}},{"node":{"fields":{"slug":"/vecka6-drift/just-task-it-docker-compose","title":"JTI - Docker Compose"}}},{"node":{"fields":{"slug":"/vecka6-drift/just-task-it-production","title":"JTI - Production"}}},{"node":{"fields":{"slug":"/vecka6-drift/todo","title":"Att göra lista"}}},{"node":{"fields":{"slug":"/vecka7-ci-cd/ci-cd","title":"CI/CD"}}},{"node":{"fields":{"slug":"/vecka7-ci-cd","title":"Vecka 7 - CI/CD"}}},{"node":{"fields":{"slug":"/vecka7-ci-cd/just-task-it-deploy-pipeline","title":"JTI - Deploy through a pipeline"}}},{"node":{"fields":{"slug":"/vecka7-ci-cd/todo","title":"Att göra lista"}}},{"node":{"fields":{"slug":"/vecka8-automatiska-test/automatiska-tester","title":"Automatiserad testning"}}},{"node":{"fields":{"slug":"/vecka8-automatiska-test","title":"Vecka 8 - Automatiserad testning"}}},{"node":{"fields":{"slug":"/vecka8-automatiska-test/todo","title":"Att göra lista"}}},{"node":{"fields":{"slug":"/vecka1-2-planering-vision/extern-updragsgivare","title":"Extern uppdragsgivare"}}},{"node":{"fields":{"slug":"/vecka9-leverans","title":"Vecka 9 - Slutleverans"}}},{"node":{"fields":{"slug":"/vecka1-2-planering-vision/extern-updragsgivare/extern-uppdragsgivare-samverkan","title":"Samverkansinformation: studentprojekt med extern uppdragsgivare"}}},{"node":{"fields":{"slug":"/vecka9-leverans/todo","title":"Att göra lista"}}},{"node":{"fields":{"slug":"/vecka1-2-planering-vision/extern-updragsgivare/vagledning","title":"Vägledning för arbete med extern uppdragsgivare"}}}]}},"pageContext":{"id":"76109ce6-d612-5e47-8afc-6cb52cf79a4d"}},
    "staticQueryHashes": ["253607798","3706406642","710574383"]}