Software Craftsmanship
A Software Craftsmanship a szoftverfejlesztés olyan megközelítése, amely a szoftverfejlesztők kódolási készségeire helyezi a hangsúlyt. Ez a szoftverfejlesztők válasza a szoftveripar általánosan elterjedt iparágának vélt problémáira, beleértve a pénzügyi szempontok előtérbe helyezését a fejlesztői felelősségvállalással szemben.
Történelmileg a programozókat arra ösztönözték, hogy a jól meghatározott statisztikai elemzések és a tudományos megközelítés matematikai szigorának gyakorlójaként tekintsenek magukra a számításelméletet alkalmazó szakemberek. Ez mára egy mérnöki megközelítésre változott, amely a pontosság, a kiszámíthatóság, a mérés, a kockázatcsökkentés és a professzionalizmus mellékjelentésével bír. A mérnöki gyakorlat a mérnöki tudás terjesztésének és a szakterület érlelésének mechanizmusaként az engedélyezés, a tanúsítás és a kodifikált tudástestületek követeléséhez vezetett.
Az Agilis Kiáltvány, amely az "egyénekre és az interakciókra helyezi a hangsúlyt a folyamatokkal és eszközökkel szemben", megkérdőjelezett néhány ilyen feltételezést. A Software Craftsmanship Manifesto tovább bővíti és megkérdőjelezi az Agilis Kiáltvány feltételezéseit, párhuzamot von a modern szoftverfejlesztés és a középkori Európa tanonc modellje között.
Áttekintés
[szerkesztés]A mozgalom gyökerei az írott művekben kifejezett gondolatokhoz vezethetők vissza. Az Andy Hunt és Dave Thomas által írt The Pragmatic Programmer és a Pete McBreen által írt Software Craftsmanship kifejezetten a középkori Európa tanonc hagyományainak örököseként pozicionálja a szoftverfejlesztést. Richard Sennett filozófus a szoftverről mint modern mesterségről írt The Craftsman című könyvében. Freeman Dyson a "Science as a Craft Industry" (A tudomány mint kézműves ipar) című esszéjében a software craftmanship mozgalmat kiterjeszti a szoftver használatának elsajátítására, mint a gazdasági haszon motorjára:
- "A Microsoft és más óriásgyártók felemelkedése ellenére a szoftverek nagyrészt kézműves iparágak maradnak. A speciális alkalmazások óriási változatossága miatt mindig lesz hely az egyének számára, hogy egyedi tudásuk alapján írjanak szoftvereket. Mindig lesznek olyan réspiacok, amelyek életben tartják a kis szoftvercégeket. A szoftverírás mestersége nem fog elavulni. A szoftverek kreatív használatának mestersége pedig még jobban virágzik, mint a szoftverírás mestersége."
A kezdeti megbeszéléseket követően Londonban[1] és Chicagóban[2] is tartottak konferenciákat, majd egy kiáltványt[3] fogalmaztak meg, amelyet az interneten tettek közzé, hogy aláírókat gyűjtsenek. Ezt követte a mozgalom továbbfejlesztését szolgáló gyakorlatok kidolgozása, beleértve a tehetségek cseréjét a "Craftsman Swaps" és a készségek értékelését a "Craftsmanship Spikes" keretében.
Kiáltvány
[szerkesztés]2009-ben kiáltvány tettek közzé, ami főbb célkitűzéseiket tartalmazza.Kiáltvány, a Software Craftsmanship webhelyről.
Történelem
[szerkesztés]A software craftsmanship mozgalom eredete az Agilis szoftverfejlesztés mozgalomból ered, amely a szoftverprojekt-menedzsment megreformálását tűzte ki célul az 1990-es években.
1992-ben Jack W. Reeves "Mi a szoftvertervezés?"[4] című esszéje azt sugallta, hogy a szoftverfejlesztés inkább mesterség, mint mérnöki tudományág. Hét évvel később, 1999-ben jelent meg a The Pragmatic Programmer (A pragmatikus programozó) című könyv. Az alcíme, "From Journeyman to Master" (A szakmunkástól a mesterig), azt sugallta, hogy a programozók szakmai fejlődésük során az európai középkori céh hagyományaihoz hasonló szakaszokon mennek keresztül.
2001-ben jelent meg Pete McBreen Software Craftsmanship című könyve. Azt javasolta, hogy a szoftverfejlesztőknek nem kell a mérnöki hagyomány részének tekinteniük magukat, és hogy egy másik metafora megfelelőbb lenne.
Az Agile 2008 Archiválva 2009. március 29-i dátummal a Wayback Machine-ben augusztusi előadásában Robert C. Martin egy ötödik értéket javasolt az Agile Kiáltványhoz, nevezetesen a "Craftsmanship over Crap" ("Kézművesség a szar felett"). Később javaslatát a "Craftsmanship over Execution" (Kivitelezés a kivégzés felett) -re változtatta. [5]
2008 decemberében az Illinois állambeli Libertyville-ben találkozott néhány törekvő szoftvermester azzal a szándékkal, hogy létrehozzák a szoftvermesterek alapelveit. Három hónappal később az általános következtetések összefoglalása mellett döntöttek. Ezt nyilvánosan is bemutatták, megtekintésre és aláírásra, a software craftsmanship mozgalomról szóló kiáltvány formájában.[6]
2009 áprilisában a sotfware craftsmanship mozgalom két vállalata, a 8.Light és az Obtiva, kísérletezett egy "Kézműves cserel" elnevezésű programmal. A Chicago Tribune 2009. június 15-én számolt be erről az eseményről [7] 2010 januárjában második kézműves cserét tartottak az Obtiva és a Relevance között. [8]
A "London Software Craftsmanship Community" (LSCC) 2010-ben alakult, és ma már a világ legnagyobb és legaktívabb szoftver kézműves közösségévé vált, több mint 5000 kézművessel. Sandro Mancuso, az egyik társalapítója 2014-ben kiadta a The Software Craftsman című könyvet: Szakmaiság, pragmatizmus, büszkeség. Ez további ismertséget hozott a szoftver kézműves mozgalomnak, megerősítve a magasabb technikai kiválóság és az ügyfélelégedettség elérésére irányuló erőfeszítéseket.
Hivatkozások
[szerkesztés]- ↑ Software Craftsmanship Conference. Parlez UML. [2009. február 6-i dátummal az eredetiből archiválva]. (Hozzáférés: 2021. június 25.)
- ↑ Software Craftsmanship North America. Software Craftsmanship
- ↑ Software Craftsmanship Manifesto. Software Craftsmanship
- ↑ Reeves, Jack W (2005-02-23), What Is Software Design?, Developer Dot Star, <http://www.developerdotstar.com/mag/articles/reeves_design.html>. Hozzáférés ideje: 2015-06-24
- ↑ Craftsmanship – the Fifth Agile Manifesto Value?, <http://www.infoq.com/news/2008/08/manifesto-fifth-craftsmanship>. Hozzáférés ideje: 2015-06-24
- ↑ Manifesto for Software Craftsmanship. Manifesto.softwarecraftsmanship.org. (Hozzáférés: 2019. március 26.)
- ↑ Wong. „Open to the competition”, Chicago Tribune, 2009. június 15.. [2012. október 26-i dátummal az eredetiből archiválva] (Hozzáférés: 2021. június 25.)
- ↑ Relevance Craftsman Swap Day 1 | 8th Light. 8thlight.com. (Hozzáférés: 2018. február 2.)
További irodalom
[szerkesztés]- Hoover, Dave. Apprenticeship Patterns: Guidance for the Aspiring Software Craftsman, Foreword by Ward Cunningham, O'Reilly (2009. október 9.). ISBN 978-0-596-51838-7
- Martin, Robert C.. Clean Code: A Handbook of Agile Software Craftsmanship. Addison Wesley (2008). ISBN 978-0-13-235088-4
- McBreen, Pete. Software Craftsmanship: The New Imperative. Addison Wesley (2001). ISBN 0-201-73386-2
- Sennett, Richard. The Craftsman. Yale University Press (2008). ISBN 978-0-300-11909-1
- Pyritz (2003). „Craftsmanship versus engineering: Computer programming - An art or a science?”. Bell Labs Technical Journal 8 (3), 101–104. o. [2013. január 5-i dátummal az eredetiből archiválva]. DOI:10.1002/bltj.10079.
- Mancuso, Sandro. The Software Craftsman: Professionalism, Pragmatism, Pride. Prentice Hall (2014). ISBN 978-0-13-405250-2
- Kokaina, Sallah. Software Craftsmanship: L'art du code et de l'agilité technique en entreprise (francia nyelven). Editions ENI (2019). ISBN 978-2-409-02154-1