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
- Nordea - Sr IT Analyst - Adobe/SAS Marketing Automation
- Nordea - Senior IT / Business Analyst with technical background - Finland, Nordea Payments
- Nordea - Senior IT Analyst, Finnish language required
- Laura - DevOps Engineer
- Aveso Oy - ERP tekninen projektipäällikkö
- Aveso Oy - IFS ERP -konsultti
- Laura - Digiasiantuntija, PAMin keskustoimistoon Helsinkiin
Premium-asiakkaiden viimeisimmät referenssit
- Symbio - Taxi Point Oy
- Valve - Helsingin yliopiston ylioppilaskunnan verkkopalvelun siirto WordPressiin
- Valve - Eezy Valmennuskeskuksen verkkokauppa-uudistus
- Valve - Danonen Nutricia ja Aptaclub -brändien sivustot
- Hellon - Identifying growth opportunities with global Moomin fans
- Hellon - Award-Winning Inclusive Customer Experience for Northern
- Hellon - Developing a Life-Saving App to Boost Blood Donations
Tapahtumat & webinaarit
- 13.11.2024 - Rakettiwebinaari: ohjelmistotestaus ja sen tulevaisuus
- 14.11.2024 - RoimaDay 2024
- 14.11.2024 - Verkkolaskufoorumin syysseminaari 2024
- 19.11.2024 - The Future of Software - Embracing Collaboration in an AI-Powered World
- 27.11.2024 - Green ICT -ekosysteemitapaaminen III: Ohjelmistojärjestelmien virrankulutuksen mittaaminen ja kasvihuonepäästöjen arviointi
Premium-asiakkaiden viimeisimmät bloggaukset
- Timeless Technology - Verkon luotettavuuden varmistaminen: Ota käyttöön Perle Systemsin teollisuustason 4G ja 5G reitittimet!
- Efima Oyj - Hyvästi turhat klikkailut: Näin moderni järjestelmä tehostaa myyntityötä erikoistavarakaupassa
- SC Software Oy - SC Softwaren uratarinat: Joel Ollikainen, konsultti
- Softlandia Oy - Sovelletun tekoälyn insinöörien esiinmarssi ja tekoälyosaamisen muutos
- Innofactor Oyj - 5 Copilot-vinkkiä Microsoft 365 -käyttäjälle
- Innofactor Oyj - Tekoäly käytännössä: 3 AI-työkalua myynnin ammattilaiselle
- TNNet Oy - "Asiakkaan tulee saada palvelua, joka jää mieleen"
Digitalisaatio & innovaatiot blogimediaBlogimediamme käsittelee tulevaisuuden liiketoimintaa, digitaalisia innovaatioita ja internet-ajan ilmiöitä |