u10-business-idea
I denna uppgift skall ni i grupp arbeta med att ta en idé från ett konceptstadie till en beta-release. Ni kan välja att arbeta med en egen idé i en grupp (varje grupp minst 2 personer), alternativt så får ni välja en av följande grundidéer att arbeta med:
Kollaborativ onlinetjänst för att få programmeringshjälp
En tjänst som hjälper en mobilanpassa sin befintliga webbplats
En realtidstjänst som låter personer ge anonym feedback på olika typer av händelser (t.ex. föreläsningar, konferenser eller andra typer av presentationer)
Ett enklare webbaserat spel, ex. som använder Geo-position och spelas i mobilen
Ett verktyg för att göra enklare omröstningar live (typ mentimeter.com)
Ett verktyg för att skapa presentationer online (typ beautiful.ai)
Ett verktyg för att ta strukturerade mötesanteckningar kollaborativt utifrån en dagordning
En tjänst som låter användaren skapa en enkel portfolio/CV
En tjänst för företag och studerande att hitta varandra kring LIA
En tjänst för att bygga enklare undersökningar/formulär som blir snygga (typ typeform.com)
Det huvudsakliga målet för denna gruppuppgift är att öva på att agilt strukturera ens arbete på ett så effektivt och hållbart sätt som möjligt. Hållbart syftar i denna kontext till att ni inte bara ska leverera en MVP (Minimal Viable Product) i form av en beta release, utan att denna leverabel också ska kunna byggas vidare på av ett helt annat team. För denna uppgift är det alltså inte bara fokus på att skriva bra kod och göra en snygg lösning utan det som levereras också är dokumenterat, och programmatiskt testbart (TDD). Varje vecka kommer det göras en avstämning för hur status ligger till i varje projekt.
Vidare kommer ni också behöva lägga tid på ert UX arbete för denna uppgift i form av användarstudier, prototyping och tillgänglighet. För denna uppgift kommer det ofta hänvisas till webbriktlinjer.se för material och annat underlag, det kommer också att behöva göras en skriftlig inlämning på hur ni skött detta arbetet och vad ni har tagit för lärdomar av det.
Slutligen kommer ni också ha två stycken individer utöver medlemmarna i ert team vilka kommer att ha olika påverkan på era beslut och prioriteringar:
Axel Olsson (produktägare): Axel är den som investerat i ert team, och er idé och kommer att intressera sig för frågor om budget, kostnader, driftsättning, prioritering av features etc.
Axel Olsson CTO (Chief Technical Officer): Axel kommer agera och kommer att styra i alla frågor som kommer röra stora tekniska beslut, kodstandarder, Continuous Deployment, hosting, utvecklingsmiljö etc.
Övergripande projekt roadmap
https://beta.onroadmap.com/team/chas-academy/project/5ab41ae04143200004af1148
Mål
Beta releasen skall uppfylla följande mål:
Projekt och affärsmässiga krav
Generella krav på arbetsprocess
Hela teamet ska använda sig av GitHub Flow när ni versionshanterar
Krav på continous integration/deployment pipeline:
Alla i teamet ska kunna deploya (och ska deploya)
Varje deploy måste köra tester innan det får produktionssättas
(Frivilligt): Kunna släppa enstaka features med "feature flags" se t.ex. https://launchdarkly.com
Tekniska krav
Backend ska byggas med Node.js och använda sig av PostgreSQL eller MongoDB för datalagring
Frontend ska implementeras i React, projektet ska genereras med create-react-app
Både frontend och backend ska implementera rudimentära tester för de mest kritiska delarna av applikationen:
För backend rekommenderas Mocha, Chai och Sinon för att strukturera tester
För frontend används Jest (som kommer med create-react-app och är väldokumenterat)
Samtliga medlemmar i teamet ska följa följande kodstandarder:
För JavaScript: http://airbnb.io/projects/javascript/
För CSS/SASS/LESS: http://airbnb.io/projects/css/
Krav för användarupplevelse
Mobilanpassning
Ta fram grundläggande grafik och design
Tillämpa riktlinjer inom användbarhet
Ta fram prototyper
Ta fram personas och målgruppsanalyser
Använda empiriska metoder för att utveckla användbarheten i ert system
Inlämning
Uppgiften ska lämnas in via classroom.github.com i rätt projekt, länk till detta projekt kommer annonseras av läraren i samband med projektets början.
Utöver att koden lämnas in måste den slutgiltiga versionen deployas på valfri domän och länk ska finnas tillgänglig på det repository som inlämningen skett via.
OBS: Det är inte tvunget att denna uppgift deployas på just Binero, den får även deployas på valfri leverantör, så länge uppgiften möter de andra målen och kraven.
Betygsättning
Den här inlämningen ger underlag för följande kursmål. Där inlämningen helt motsvarar och går att bedöma för de mål som står med svart text och bara delvis de som står med brun text.
BE 1.4 MVC
BE 1.7 Relationsdatabaser, SQL och ER-modellering
BE 1.8 OAuth i backend
BE 1.11 REST
BE 1.12 XML och andra dataformat
BE 1.13 Webbservrar
BE 2.1 Webbutveckla med objektorienterad PHP
BE 2.2 Skapa webblösningar med ett MVC-ramverk
BE 2.4 Hantera, administrera och strukturera databaser
BE 2.6 Bygga egna enklare REST-API:er
BE 3.1 Arbeta som Fullstack-webbutvecklare med backendutveckling
—
PJ 1.1 Agila metoder (Scrum, Kanban, Extreme Programming)
PJ 1.4 Issue handling
PJ 2.1 Arbeta i projekt enligt agila metoder
PJ 2.3 Kunna hantera inkommande ärenden/issues i ett projekt
PJ 3.1 Ta ansvar för ledning av individers och gruppers utveckling i arbetet
—
UD 1.1 Grafik och design för webbsidor
UD 1.2 UX och användbarhet
UD 1.4 Prototyping
UD 1.5 Personas och målgruppsanalys
—
UD 2.1 Ta fram grundläggande grafik och design för webb
UD 2.3 Ta fram prototyper
UD 2.4 Ta fram personas och målgruppsanalyser
UD 3.1 Arbeta som Fullstack-webbutvecklare med UX och grundläggande design
Utöver denna inlämning kan det även finnas fler examinationsmoment som ligger till underlag för samma kriterier.
Godkänd
För att nå Godkänd som betyg på denna inlämning ska du:
utför alla färdigheter (2.x) som uppgiften har som mål med gott handlag
Med gott handlag syftas det till att inlämnad kod ska enhetligt följa standarder för backend och frontend som är angivna i uppgiftsbeskrivningen
Väl godkänd
För att nå Väl godkänd som betyg på denna inlämning ska du:
utför alla färdigheter (2.x) som uppgiften har som mål med mycket gott handlag
Mycket gott handlag omfattar godkänd nivå men inlämning innehåller även utförlig och enhetlig dokumentation för hela kodbasen (i både kod och separat dokumentation), meriterande är om det finns rudimentära tester i form av enhetstester och funktionella tester
Last updated