Ohjelmistotuotannossa ketterät käytännöt korostavat itseorganisoituneiden ja monialaisten tiimien ja asiakkaiden välistä yhteistyötä. Ne perustuvat kevyen mutta riittävän metodologisen kehyksen käyttöön, joka keskittyy ihmisiin ja viestintään. He kannattavat mukautuvaa suunnittelua, evoluutiokehitystä, varhaista toimitusta ja jatkuvaa parantamista ja kannustavat joustavasti reagoimaan muutoksiin.
Tätä lähestymistapaa popularisoitiin vuodesta 2001 lähtien ketterän ohjelmistokehityksen manifestissa . Tässä manifestissa hyväksytyt neljä arvoa ja kaksitoista periaatetta ovat peräisin monenlaisista menetelmistä, mukaan lukien Scrum ja eXtreme Programming . Siitä lähtien tämän manifestin filosofiaan sopivia menetelmiä on kutsuttu "ketteriksi menetelmiksi".
Ketterien menetelmien on tarkoitus olla käytännönläheisempiä kuin perinteiset menetelmät, sisällyttää pyynnön esittäjä (asiakas) mahdollisimman paljon ja sallia suuri vastaus heidän pyyntöihinsä. Ne perustuvat iteratiiviseen, inkrementaaliseen ja mukautuvaan kehitysjaksoon .
Manifesti Agile Software Development on kirjoitettu teksti Yhdysvalloissa vuonna 2001 seitsemäntoista ohjelmistokehityksen asiantuntijaa. He uskoivat, että ohjelmistokehitysprojektien suuri epäonnistumisaste johtui maa- ja vesirakentamisen innoittamien ja kaskadikehityssykliin perustuvien perinteisten menetelmien painosta . Jokainen heistä oli jo kehittänyt ja kokeillut uusia, kevyempiä menetelmiä. Ketteriä menetelmiä ei siis esiintynyt ketterän manifestin yhteydessä. Se määritteli kuitenkin niiden yhteiset nimittäjät ja vahvisti termin "ketterä" viitatakseen niihin. Ketterän manifestin arvoja ja periaatteita puolustaa ja edistävät joidenkin allekirjoittajien luomat ketterät allianssit.
Yhdistetyn ohjelmistokehityskokemuksensa perusteella manifestin seitsemäntoista allekirjoittajaa julisti pitävänsä tärkeänä "ihmisiä ja heidän vuorovaikutustaan kuin prosesseja ja työkaluja" , "toiminnallisia ohjelmistoja. Ei tyhjentävää dokumentointia" , "työskentelevät asiakkaiden kanssa pikemminkin kuin sopimusneuvottelut ” ja ” sopeutuminen muutokseen suunnitelman toteuttamisen sijasta ” . Tämä tarkoittaa, että sanan "pikemminkin" vasemmalla puolella olevilla kohteilla on jokaisessa lainauksessa enemmän arvoa kuin oikealla olevilla, vaikka jälkimmäisessäkin on arvoa. Näitä neljää lainausta kutsutaan ketterän manifestin neljäksi "arvoksi" .
Ketterän manifestin neljä arvoa on jaettu kahteentoista periaatteeseen operatiivisen avun tarjoamiseksi ryhmille, jotka haluavat noudattaa niitä.
Toistuvan ja inkrementaalisen tuotantosyklin työ on peräisin 1930- ja 1940-luvuilta Walter Shewhartin ja William Edwards Demingin työn kanssa . Tätä tutkimusta sovellettiin tietokonetuotantoon 1950-luvun lopulla, erityisesti kehitettäessä ohjelmisto-osia Mercury-ohjelman puitteissa . Gerald Weinberg (vuonna) mainitsee Motorolalle vuonna 1957 tehdyn kehitysprojektin , jossa käytettiin tekniikkaa, joka oli samanlainen kuin myöhemmin eXtreme-ohjelmointi .
Ketterät menetelmät ovat huipentuma moniin teoksiin, kuten Tom Gilb (evoluutiomainen elinkaari) vuonna 1981, Scott Shultz (tuotanto nopeasti toistettavissa), Brian Gallagher ja Alex Balchin. Ne integroivat myös tekniikat JRP ( Joint Requirements Planning ) ja JAD ( Joint Application Design ) (en), jotka aloitti Dan Gielan, jonka muodosti sitten IBM: n Chuck Morris vuonna 1984 ja levitti muun muassa kirjoina vuonna 1989. , J. Wood ja D. Silver. Ensimmäinen ketterä menetelmä olisi Tom Gilbin EVO-menetelmä , joka julkaistiin vuonna 1976 .
Vuonna 1986 , Barry Boehm julkaisi spiraalimalli (inkrementaalinen kehitys) ja Hirotaka Takeuchi (fi) ja Ikujirō Nonaka julkaisi "Uuden uusien tuotteiden kehittämiseen peli" malli teollisuuden tuotekehityksen perustuu samanaikaiseen sitoutuminen eri alojen osalta. (Samanaikainen tekniikka).
Vuonna 1991 , James Martin (en) , joka perustuu visio jatkuvan kehityksen tietotekniikkaa, ehdotti menetelmää nopea sovelluskehitys ( RAD ). Tämän menetelmän iteratiivinen, inkrementaalinen ja adaptiivinen rakenne on nykyisten ketterien lähestymistapojen perusta. Se määrittää kehitysjakson olennaiset vaiheet ja toteuttaa pysyvän mukautuksen, joka perustuu käyttäjien pysyvään validointiin ja heidän suoraan vastuuseen sovellusten dynamiikassa.
Vuodesta 1994 , Jean-Pierre Vickoff Ranskassa, erityisesti kanssa RAD2- prosessin julkaisemassa Gartner Groupin vuonna 1999 , ja Jennifer Stapleton Isossa-Britanniassa, jossa DSDM esitteli täydentää ja kehitys (tiedot nopea kehitys sovelluksia ).
Vuonna 2001 Yhdysvalloissa seitsemäntoista tunnettua ohjelmistokehityshahmoa kokoontui keskustelemaan menetelmiensä yhdistävästä teemasta. Tunnetuimmat niistä ovat Ward Cunningham , keksijä Wiki kautta WikiWikiWeb , Kent Beck , isä Extreme Programming ja yhteistyötä perustaja JUnit , Ken Schwaber luoja Scrum ja Jeff Sutherland sen promoottori, Jim Highsmith (in) , kannattavat ASD , Alistair Cockburn kristallinkirkkaalle menetelmälle , Martin Fowler ja Dave Thomas sekä Arie van Bennekum DSDM: lle (dynaaminen järjestelmän kehittämismenetelmä).
Nämä 17 asiantuntijaa poimivat omasta käytöstään yhteiset kriteerit ja periaatteet, jotka heidän mukaansa johtavat parhaisiin projektihallinnan ja ohjelmistokehityksen käsitteisiin. Tästä kokouksesta syntyy ketterä manifesti , jota harjoittajat ja tutkijat pitävät koonaalisena määritelmänä ketterän ohjelmistokehityksen arvoja ja sen perusperiaatteita.
Selvittääkseen manifestinsa parhaiten seitsemäntoista allekirjoittajaa ajatteli ensin termiä kevyt keskittyä vihdoin ketterään (käännettynä identtisesti ranskaksi). Fowlerin mukaan tämä termi heijastaa paremmin näiden menetelmien nopeasti mukautuvaa näkökohtaa.
2000- luvun alussa suosittiin noin kymmenen ketterää menetelmää (joista XP Extreme -ohjelmointi ja Scrum ovat tärkeimmät edustajat). XP: n metodologinen panos on suosituksessa työntää äärimmäisyyksiin sovellusten rakentamisen tärkeimmät laatukäytännöt sekä konsensusarvioinnin, käyttäjälähtöisen suunnittelun ja visuaalisen raportoinnin mukautuvat tekniikat reaaliajassa. Edistyminen sekä kohdatut ongelmat (seinänäyttö post-it-muistiinpanoissa). Scrum tarjoaa pienen sarjan käytäntöjä, jotka keskittyvät sopeutumiskyvyn kehittämiseen oppimisen ja itseorganisaation avulla.
Menetelmät, jotka voidaan luokitella ketteriksi Agile-manifestin julkaisemisen jälkeen, ovat:
Ketterän manifestin 17 allekirjoittajan joukossa jotkut ovat sittemmin kritisoineet ei ketteriä periaatteita vaan niiden täytäntöönpanoa.
Ron Jeffries näyttää useita ongelmia:
Hän kehottaa kehittäjiä olemaan hylkäämättä ketterää, kuten muistiinpanon otsikko ehdottaa, mutta irrotettava ajattelunsa pakotetuista ketteristä menetelmistä ja keskittymään toimivan ohjelmiston kehittämiseen esimerkiksi korostamalla Extreme Programming -käytäntöjä .
Andy Hunt uskoo, että jos ketterien menetelmien käytäntö ei toimi, se johtuu siitä, että mieluummin sovellamme yksinkertaisia sääntöjä, kun ne asettavat jatkuvan kyseenalaistamisen. Kaksi arvoa "tarkastus" ja "muutokseen sopeutuminen" ovat välttämättömiä etenkin Scrum-menetelmässä, mutta niitä ei kunnioiteta juurikaan, koska taustalla oleva kysely on tarpeen.
Martin Fowler toteaa , että useimmat ketterät projektit vuonna 2018 ovat "vääriä ketteriä" eivätkä kunnioita sen arvoja ja periaatteita. Kolme päähaastetta ovat siis:
Dave Thomas huomauttaa, että monet ihmiset ja yritykset ovat hyödyntäneet ”ketterää” virtaa tuotteiden ja palvelujen myynnissä. Humoristisella tavalla hän sanoo "Ketterä on kuollut, eläköön ketteryyttä". Substantiivin käyttäminen adjektiivin sijaan havaitsisi hänen mukaansa paremmin ketterien tuotteiden ja palvelujen häikäilemättömät myyjät.
Robert C. Martin (Bob-setä) ajattelee, että ketterän liikkeen oli tarkoitus edistää ohjelmistojen käsityötaitojen ihanteita, mutta se on itse asiassa epäonnistunut kauheasti. Hänen mukaansa ketterästä liikkeestä on tullut kaupallinen ja se on syrjäyttänyt alkuperäiset arvonsa.
" Ketterä manifesti ja sen periaatteet edustavat melko uraauurtavaa työtä virallisten ohjelmistomenetelmien yhdistämisessä ja laajentamisessa viimeisen vuosikymmenen aikana, ja ammattilaiset ja tutkijat ovat ottaneet ne hyvin vastaan. "