Mitä on Software Craftsmanship?
Software Craftsmanship on vuosituhannen vaihteessa ohjelmistokehittäjien toimesta kehitetty lähestymistapa, joka pyrki vastaamaan sen hetkisiin ongelmiin ohjelmistokehityksessä. Software Craftsmanship (SC) on ohjelmistokehityksen ideologia, joka haastaa näkemään ohjelmistokehityksen perinteistä mekaanista insinöörityötä laajempana kokonaisuutena. SC:ssä korostetaan ohjelmistokehittäjien ammattitaitoa, kokemusta, kommunikaatiota ja laadukkaan ohjelmistokehityksen ymmärtämistä.
Historia
90-luvulla ohjelmistokehitys nähtiin hyvin staattisena ja matemaattisena insinöörialana. Ohjelmistoprojektit olivat mekaanisia ja systemaattisia kokonaisuuksia, jotka katsottiin olevan “helposti” toteutettavissa, kunhan ne vain määriteltäisiin ja suunniteltaisiin kattavasti ennen toteutusta. Prosesseihin, määrittelyyn ja suunnitteluun kulutettiin valtavia määriä aikaa ja kuviteltiin, että näin systemaattisesti suoritettuna ohjelmistoprojektit saadaan onnistuneesti maaliin, kuten sillan rakennus konsanaan. Ongelmaksi kuitenkin muodostui, että ohjelmistokehitysprojektit ovat valtavia ja monimutkaisia kokonaisuuksia. Niiden määrittely ja suunnittelu etukäteen siten, että toteutus olisi aina lopputulokseltaan sama, on käytännössä mahdotonta.
Miksi tämä sitten on mahdotonta? Se on mahdotonta siksi, että ohjelmistokehitystä tekevät ihmiset, jotka pystyvät käsittelemään vain tietyn määrän asioita kerralla, ymmärtävät asioita eri tavalla ja tekevät myös virheitä. Täydellisenkin määrittelyn ja suunnitelman pohjalta saadaan siten erilaisia ja virheellisiä lopputuloksia. Toisaalta täydellistä määrittelyä ja suunnitelmaakaan ei koskaan tulla saamaan, koska niidenkin tekijöinä ovat erehtyväiset ihmiset.
Software Craftmanshipin nousu
2001 vuonna Pete McBreen julkaisi teoksen “Software Craftsmanship: The New Imperative”, jonka pääideana oli saada ihmiset ymmärtämään, että ohjelmistokehitys ei ole (pelkästään) mekaanisiin tehtäviin jaettava kokonaisuus. McBreen esitteli perinteisen ohjelmistokehitysmallin tilalle vaihtoehtoista Software Craftsmanship -mallia, jonka keskiöön nousevat ohjelmistokehittäjät eli ihmiset.
SC haastaa näkemään ohjelmistokehityksen mekaanista insinöörikehitystyötä laajempana kokonaisuutena. SC:ssä ohjelmistokehitys nähdään kokonaisuutena:
- Joka on luovaa työtä, jossa yhdistyy
- vahva ammattitaito
- perinteiset insinööritaidot
- matemaattiset- ja tieteelliset taidot
- kokemuksen myötä tulevat “käsityöläistaidot” – kokemuksen kautta kehittynyt ymmärrys ja osaaminen
- Jossa korostetaan ihmisten välistä kommunikaatiota ja asiakasvaatimusten ymmärrystä
- Jossa korostetaan yksilöiden taitojen ja kokemuksen merkitystä
- Jossa ei toimiteta VAIN toimivaa ohjelmistoa, vaan myös hyvin rakennettua ohjelmistoa
Kovien teknisten arvojen rinnalle nostettiin siis pehmeämpiä ja yksilön ominaisuuksia korostavia arvoja. Samalla pyrittiin korostamaan erityisesti ohjelmiston ja työn laadun merkitystä.
Software Craftsmanship Monadilla
Monadilla on Craftsmanship-tyyppinen ajattelutapa kaikkeen tekemiseen ja se onkin yksi perusarvoistamme.
Meillä (Software) Craftsmanship näkyy seuraavasti:
- Vahva halu tehdä korkealaatuisia ratkaisuja: Haluamme rakentaa laadukkaita ohjelmistoratkaisuja hyviä menetelmiä hyödyntäen. Me tiedämme, että teknisesti laadukkaampi ohjelmisto on joustavampi muutoksille ja kestää aikaa – näin säästyy rahaa jo lyhyelläkin aikavälillä, puhumattakaan tuotteen koko elinkaaren kustannuksista.
- Läpinäkyvä ja avoin kommunikointi kaikille osapuolille: Toimiva yhteistyö niin asiakkaiden kuin tiimin kesken perustuu luottamukselle. Sen keskeisin rakennusaine on mielestämme rehellinen ja avoin kommunikaatio. Siksi toimimme läpinäkyvästi ja panostamme avoimuuteen toiminnassamme.
- Jatkuva kehittyminen ja kouluttautuminen: Vaikka ohjelmistotekniikan perusolettamat ovat pysyneet vuosikymmeniä samana, täytyy kuitenkin muistaa, että ohjelmistokehityksessä käytettävät tekniikat ja laitteet kehittyvät nopeassa tahdissa, joten niin kehitymme mekin: ylläpidämme ja kehitämme jatkuvasti osaamistamme, sekä pysymme tietoisina mitä maailmalla tapahtuu. Näin voimme tarjota asiakkaillemme parasta.
- Tiedon jakaminen ja mentorointi: Koemme arvokkaaksi taidot, joita voimme oppia toisiltamme. Kuten eräs tiimimme jäsen totesi: “muiden korkean osaamisen rinnalla pääsee itsekin kehittymään”. Katselmoimme toistemme koodia ja jaamme tietoa toisillemme esimerkiksi Tekniikkatorstai-tapahtumassa, jossa jokainen voi alhaisella kynnyksellä esittää jotain uusia (tai vanhoja) ohjelmistokehitykseen liittyviä juttuja. Korona-aikana halukkaat ovat voineet esitellä uusia mielenkiintoisia palveluita tai muuta aiheeseen liittyvää myös etänä “ATK-kahveiden” merkeissä. Harjoittelijoillemme ja kesätyöntekijöillemme järjestämme Monad.bind(trainee) -koulutusohjelman. Tavoitteena on opettaa uusille työntekijöille sellaisia taitoja, joita ei opi koulunpenkillä.
- Ammattiylpeys ja ylpeys oman työn laatuun: Osana monadilaisuutta pidämme tärkeänä, että on kiinnostunut oman työnsä laadusta, ja on ylpeä sekä omista että yhteisistä onnistumisista.
- Vastuun kantaminen ja rehellisyys: Aina ei mene ihan putkeen. Oikea ammattilainen osaa kuitenkin sanoa, milloin on tehty virhe ja kantaa siitä vastuun. Tuomme myös rehellisesti esiin jo hyvissä ajoin mahdolliset epävarmuustekijät projektin tai toteutuksen näkökulmasta. Lähtökohtaisesti uskomme, että läpinäkyvä yhteistyö ennaltaehkäisee ja vähentää mahdollisten ongelmien muodostumista.
Meihin jokaiseen on iskostunut mielikuva käsityöläisen tekemästä uniikista tuotteesta. Miellämme sen harkiten suunnitelluksi ja vahvalla ammattitaidolla rakennetuksi. Muistat varmasti Pauligin kahvimainokset ja lopussa lausahduksen “Tunteella ja taidolla”. Juuri siten meillä halutaan rakentaa ohjelmistoja. Siksi software craftmanship istuu meille täydellisesti.
Alkuperäisen tekstin löydät täältä.
Lisätietoja
Tagit
Liiketoimintaprosessi
Tuotekehitys ja suunnittelu |
Erikoisosaaminen
Analytiikka | |
Arkkitehtuuri | |
Big Data | |
Integraatiot | |
IoT | |
Ketterät menetelmät | |
Ohjelmistokehitys | |
Pilvipalvelut / SaaS |
Toimialakokemus
Valmistava teollisuus |
Teknologia
Amazon Web Services | |
Azure | |
Tarjonnan tyyppi
Konsultointi | |
Koulutus | |
Toteutustyö | |
Tuki- ja ylläpitotyö |
Monad - Asiantuntijat ja yhteyshenkilöt
Monad - Muita referenssejä
Monad - Muita bloggauksia
It- ja ohjelmistoalan työpaikat
- Laura - Mobiilikehittäjä, Android
- Laura - Ohjelmistoarkkitehti, Tampere/Oulu
- Laura - Development Team Manager, Sports Games
- Taito United Oy - Senior Full Stack -kehittäjä
- Webscale Oy - Head of Sales, Cloud Services
- Laura - Hankinta-asiantuntija, tietohallinto
- Laura - Development Manager, Operations
Premium-asiakkaiden viimeisimmät referenssit
- SD Worx - Kehitystyö SD Worxin kanssa takaa Clas Ohlsonille parhaat palkanmaksun prosessit kasvun tiellä
- Digiteam Oy - Case Esperi Care Oy: Ketterä kumppanuus vei Esperin verkkosivu-uudistuksen maaliin sujuvasti ja aikataulussa
- Kisko Labs Oy - Howspace Hub - Mukautuva oppimisen hallintajärjestelmä kasvaviin oppimisalustavaatimuksiin
- Kisko Labs Oy - Sanoma Pro: Multimediasisältöjen hallinnan uudistaminen
- Kisko Labs Oy - Svean helppokäyttöinen palvelu asiakkaan verkko-ostosten hallintaan
- Kisko Labs Oy - Yhtenäinen käyttöliittymä luovien alojen ammattilaisille
- Codemate - Digitaalisen murroksen nopeuttaminen Flutterin avulla
Tapahtumat & webinaarit
- 27.11.2024 - Green ICT -ekosysteemitapaaminen III: Ohjelmistojärjestelmien virrankulutuksen mittaaminen ja kasvihuonepäästöjen arviointi
- 27.11.2024 - Digitaalisen asiakaskokemuksen uusi aikakausi
- 28.11.2024 - Webinaari: Keskity myyntityön laatuun!
- 28.11.2024 - Copilot-webinaari – Mielekkäämpää tietotyötä turvallisesti
- 04.12.2024 - Kuinka oikea matka- ja kululaskujärjestelmä tehostaa prosesseja?
- 05.12.2024 - Green ICT VICTIS -hankkeen kick off -tilaisuus
- 15.01.2025 - Datavastuullisuuden valmennus: hanki valmiudet vastuulliseen datan ja tekoälyn hyödyntämiseen
Premium-asiakkaiden viimeisimmät bloggaukset
- Kisko Labs Oy - Heroku: Millaisiin projekteihin se sopii ja mitkä ovat sen todelliset hyödyt ja haitat?
- Zimple Oy - Pipedrive vai Hubspot? Kumpi kannattaa valita?
- SC Software Oy - Jatkuvat palvelut – asiakaslähtöistä kumppanuutta projekteista ylläpitoon
- Timeless Technology - Ohjelmoitavat logiikat (PLC): Ratkaisevat työkalut automaatioon ControlByWebiltä.
- Kisko Labs Oy - Heroku: Ohjelmistokehittäjän ykköstyökalu skaalautuvien sovellusten rakentamiseen
- SD Worx - Näin luot vakuuttavan Business Casen palkkahallinnon ulkoistukselle
- Timeless Technology - Kyberriskien tunnistaminen Profitap IOTA verkkoanalysaattorin avulla.
Digitalisaatio & innovaatiot blogimediaBlogimediamme käsittelee tulevaisuuden liiketoimintaa, digitaalisia innovaatioita ja internet-ajan ilmiöitä |