wad2019

Utveckling av e-tjänster

elobinalogo

Kundcase: Elobina
New Seed har hjälpt Elobina utveckla sin unika webbtjänst. Elobinas system är en helt vanlig webbutik i grunden fast med en mycket avancerad produkteditor där kunder kan beställa sina egenskapande textilprodukter. Bakom kuliserna är där en rad e-tjänster som samverkar och bildar Elobinas tekniska plattform.

Ett av New Seeds främsta område är utveckling av e-tjänster. Med erfarenhet sedan 1999 av att utveckla e-tjänster har vi varit med och skapat flera e-handelstjänster, onlinebetalningasystem, bokningsprogram, dokumenthanteringssystem, affärssystem med mycket mera. NewSeed har även varit med och tagit fram integrationer mellan olika system eller att modernisera gamla system via exempelvis utbyggnad av ett REST API framför.

Behöver ni hjälp med en eller flera av följande punkter?

  • Val av teknisk plattform
  • Teknisk pitch för en startup
  • Proof-of-concept för ny e-tjänst
  • Utveckling av e-tjänst
  • Anpassning till mobila enheter
  • App eller inte en app?

New Seed har lång erfarenhet och kan både hjälpa er i en rådgivande roll eller utföra arbetet. Vi har jobbat med såväl Mac som PC, Android som Apple och har en lång och bred erfarenhet av utveckling av e-tjänster. Tekniker vi ofta arbetar med är Java, JavaScript, NodeJS, Perl, PHP med flera. Vi har använt både Amazon AWS och Azure i samarbete med våra kunder.

Hur tar man fram en ny e-tjänst?

Att bygga en ny e-tjänst är ofta en mycket kreativ process som kräver mycket mer än bara programmeringskunskap. Förenklat kan man dela upp utvecklingen i följande faser:

  • Analys – här analyseras behoven som finns. Vad ska e-tjänsten göra? Vad är syftet? Vem är intressenter? En bra start på en sådan analys är en gemensam workshop där man kombinerar affärskunskap med tekniska möjligheter.
  • Förslag – utifrån analysen tar vi fram en grov beskrivning av e-tjänsten. Här beskrivs vilka funktioner som ska finnas (och inte finnas!). Grov tidsuppskattning för utvecklingstiden.
  • Detaljerad beskrivning – en detaljbeskrivning av vad som ska utvecklas arbetas fram. Här listas de olika funktionerna och dess syfte. Ibland används user stories, personas eller andra metoder för att illustrera funktion.
  • Implementation – Den faktiska utvecklingen påbörjas! Detta är ofta en iterativ process där man kan testa av delar efterhand som de blir klara. Vi jobbar med agila utvecklingsmetoder. Inte sällan stöter man på problem eller annat som får en att omarbeta beskrivningen. Målet kan vara att ta fram ett proof-of-concept (POC), en minimum viable product (MVP) eller en färdig produkt.
  • Testning – Beroende på utvecklingsmetod kan delar av denna process vara automatiserad. För att få bra kvalité i slutresultatet så kräver det dock ett engagerat testande som helst inte alls ska utföras av de som har utfört programmeringen.
  • Publicering – En driftsättning av tjänsten planeras. Här kan befintliga system behöva beaktas och överföring och uppdatering av data krävas. En ny produkt är nästan alltid enklare att publicera än en ny version eller ersättning av en befintlig.
  • Förvaltning – Projektet överlämnas till förvaltning. Från NewSeed tar vi fram förvaltningsdokumentation om hur e-tjänsten underhålls. Exempelvis hur säkerhetskopiering eller felsökning ska hanteras.

Dessa steg kan ske i olika omfattning och ofta iterativt. Det är också starkt beroende av hur omfattande utvecklingen är.

Hur väljer man teknisk plattform?

Hur vet man vilket programmeringsspråk eller teknisk plattform som är rätt för e-tjänsten? Det är en mycket svår fråga och den har inget generellt svar. Rent generellt bör man beakta frågor som hur länge förväntas e-tjänsten finnas? Hur ser kompetensen ut på marknaden för de tekniker vi väljer? Om man har ett långt tidsperspektiv så kanske man ska välja beprövade tekniker snarare än de allra senaste.

Exempelvis är Java och C# språk som har haft popularitet under en längre tid, om man väljer de språken som bas så vet man att de med stor sannolikhet kommer att finnas länge framöver. Väljer man däremot ett språk såsom Python eller Rust som har stigit mycket i popularitet på senaste år så vet men inte om denna popularitet avtar snabbt eller om dessa också kommer att bli lika långlivade som Java och C#. Det finns även en rad andra egenskaper hos språken som kan lämpa sig bättre eller sämre beroende på syftet med det som ska utvecklas. På NewSeed har vi använt många olika språk för olika syfte har kan därmed ge råd om vilket som passar för just ert projekt.

Det finns sedan även en rad olika ramverk att välja mellan. Även här är popularitet och ändamål viktiga saker att ta hänsyn till när man ska välja. Exempelvis är React ett sedan länge befäst ramverk för frontend, dock har det många ”variationer” i hur det sätts upp.

Idag behöver man även välja moln-leverantör. De största aktörerna är Amazon AWS, Google Cloud och Microsoft Azure. Dessa är på många sätt lika men skiljer sig också väsentligt på visa punkter. För att välja mellan dessa så är det bra att inhämta information från olika källor som är bra på de olika respektive plattformarna. Vi på NewSeed är av uppfattningen att Amazon AWS har mest generell och utvecklad tjänst. Google Cloud har en utmanande roll med vissa tjänster som är bättre eller billigare än AWS. Microsoft Azure är av naturliga skäl bäst på hosting av sina egna tjänster och produkter men har också de en fullgod utmanande roll till AWS.

Hjälp med att komma igång

Är du osäker på hur du kommer igång? Utnyttja gärna vårt erbjudande om en kostnadsfri rådgivning på en timme. Sedan följer vi gärna upp med antingen studiebesök hos er eller en workshop där vi kan hitta möjligheter tillsammans!

Kom in på en kopp kaffe!

Boka in ett första möte med oss, så diskuterar vi din idé och hur vi skulle kunna vara till hjälp. Det första mötet med oss är alltid helt kostnadsfritt. Ibland är det inte så lätt att själv se lösningen på ditt problem och då kan det vara bra att få diskutera det i lugn och ro med någon som har erfarenhet av att lösa liknande situationer. Ge oss dina problem – så kommer vi tillsammans fram till en lösning.

Skicka en förfrågan