Ohjelmistokehitys

Sarkain Oy:n erikoisosaamiseen kuuluu yhtenä merkittävänä osana ketterä ohjelmistokehitys (agile software development), jonka avulla it-projekti viedään onnistuneesti maaliin. 

Projektiosaamisemme on viety huippuunsa, jotta voimme tuottaa digitaalisia palveluita mahdollisimman kustannustehokkaalla tavalla.

Mitä huomioida ohjelmistokehityksessä?

Mitä softaprojekti sisältää?

Kustannusarvio

Ohjelmistojen kehittäminen vaatii lähestulkoon aina kattavan määrityksen, jotta lopullinen käyttötarkoitus ja toiminnallisuus on ymmärretty myös toimittajan puolelta. Autamme laatimaan myös määrityksiä mm. tarjouspyyntövaiheisiin.

Suunnittelu ja konseptointi

Määrityksen tukena on hyvä olla käyttöliittymäsuunnitelma palvelusta, joka auttaa hahmottamaan lopullisen palvelun toimintoja ja käytettävyyttä. Pilotin kautta kohderyhmällä voimme testata jo lopputuotetta.

Teknologia

Taustapalvelun ja muiden ohjelmistokomponenttien teknologia valitaan sen mukaan, mikä kulloinkin sopii parhaiten käyttötapaukseen. Pyrimme tekemään aina valinnan siten, että jatkokehitys ei ole meistä riippuvainen. Suosimme avoimia teknologioita.

Integrointi

Taustapalveluun rakennetaan usein integraatioita muihin järjestelmiin, jos niitä ei ole kustannustehokasta tehdä alusta alkaen. Sarkain Oy:llä on kokemusta usein tarpeelliseksi havaituista integraatioista, kuten maksunvälitys, käyttäjähallinta ja SMS-palvelut yms.

Ohjelmistotestaus

Ohjelmistokehitys pitää sisällään yksikkötestausta, jossa kehittäjät tekevät jatkuvaa testausta luomalleen koodille. Lisäksi toiminnon valmistuttua uudet toiminnot testataan testausympäristössä. Tämän lisäksi ajamme vielä muutokset laadunvalvonnan läpi, joka hyväksyy ja testaa ne lopullisessa ympäristössä.

Ylläpito

Tarjoamme ohjelmistotuotteiden ylläpitoa kk-veloitteisena palveluna, jolloin otamme vastuun palvelun toimivuudesta, serverien ylläpidosta (Dev-ops) ja teknisestä tuesta. Jokainen palvelu on oma kokonaisuus, jonka pohjalta hinta muodostuu.

Taustapalvelut (tietojärjestelmät)

Ohjelmistotalo ja ohjelmistoyritys

Mikä on taustapalvelu ja tarvitaanko se?

Yleisesti ottaen ohjelmistot koostuvat karkeasti kahdesta osasta, Frontend ja Backend, joista muodostuu omat kehitettävät projektit.

Olemme toteuttaneet lähes jokaiseen kehittämäämme sovellukseen/palveluun taustajärjestelmän (Backend). Kyseinen tietojärjestelmä pystyy käsittelemään ja varastoimaan kaikkea tietoa ja hoitamaan logiikkaa, joten se on hyvin tärkeä osa koko palvelua. Taustajärjestelmään kytketään usein erilaisia lisäpalveluita, esim. SMS viestipalvelu, Google-karttapalvelu tai ilmoitusjärjestelmä (pushnotifikaatio -palvelu).

Backendille luodaan REST/JSON ohjelmistorajapinta, mitä eri ohjelmistokäyttöliittymät voivat käyttää.

Taustajärjestelmän kehitys kattaa yleensä suurimman osan koko ohjelmistoprojektista ja sillä on myös hyvin suuri vaikutus palvelun olemassa oloon.

Ohjelmistotalo

Missä taustajärjestelmä on?

Palvelu rakennetaan ja sitä ajetaan eli tietoa haetaan pilvipalvelusta. Käytämme Microsoft Azure ja Google AWS pilvipalveluita. Tarjoamme jokaiseen projektiin valmiin tilan käyttäen moderneja palveluratkaisuja (vaihtoehtoisesti projekti perustetaan tilaajan omaan pilvipalveluun).

Palvelu tuotetaan usein SaaS-palveluna käyttäen Azuren tarjoamaa Kubernetes-palvelua (Aks).

Aks tarjoaa dynaamisesti skaalautuvan ympäristön, mikä skaalautuu nopeasti resurssien käytön noustessa. Kubernetes (https://kubernetes.io/) nojautuu Docker kontteihin, mitkä mahdollistavat skaalautuvuuden ja nopean päivittämisen.

Frontend ja Backend toimivat omissa nimiavaruuksissaan, joihin tuodaan molempien tarvitsemat palvelut.

Web-ohjelmistokehitys

Toteutamme web-sovelluksia modernien sekä avointen (open source) teknologioiden avulla.

Ohjelmistokehitystä

Mobiilisovellus, mikä nimetään usein apiksi (App), on meille kaikille hyvin tuttu. Web-sovellus poikkeaa mobiilisovelluksesta siten, että käytössä on usein suurempi näyttö ja sovellusta voidaan käyttää lähes kaikilla nykyaikaisilla selaimilla ilman asennusta.

Web-sovellus suunnitellaan ja toteutetaan responsiivikseksi, jolloin sen käyttö onnistuu tietenkin myös mobiililaitteille, mutta usein parempi käyttökokemus saadaan tekemällä mobiilisovellus, jos mobiililaitteet ovat ensisijainen käyttökohde.

Selaimet tarjoavat useisiin tarpeisiin sopivan alustan, johon voimme kehittää räätälöityjä web-sovelluksia. Lue lisää mobiilisovelluksen ja tavallisen sovelluksen eroista.

Web-sovellus voidaan kehittää useilla eri teknologioilla, kuten REACT, ANGULAR JS, VUE. Nykyiset Front-teknologiat pohjautuvat pitkälti Javascript koodipohjalle.  

Millaisella teknologiaosaamisella ohjelmistokehittäjämme on varustettu?

  • Java
  • PHP
  • Python
  • React
  • Javascript
  • Typescript
  • Angular.JS
  • React Native (mobiili)
  • Swift
  • Kotlin
  • HTML, CSS, Boostrap
  • DEVOPS
  • Azure, AWS (Pilvipalvelut)
  • SQL, PostreSQL
  • MySQL

Tutustu valmistuneisiin ohjelmistoprojekteihin

Useat toteuttamamme ohjelmistotuotteet eivät ole julkisesti saatavilla.

Joko aloitetaan?

Ohjelmistoprojektit käynnistyvät usein kevyellä määrityksellä, jotta kustannukset projektille voidaan arvioida ja projektin budjetti saadaan näin laadittua. Sarkain Oy tarjoaa myös konsultointipalveluita tarjouspyynnön laadinnan tueksi. Tällöin määrittely, teknologiakysymykset ja muut keskeiset asiat on huomioitu heti alkuvaiheessa. Soita tai laita viestiä.