extreme Programming programozástechnika

Hasonló dokumentumok
programozástechnika Kezdetek Fı célja 1. Kommunikáció Kezdetek - Adaptivitás

Angolul: Extreme Programming, röviden: XP Agilis módszertan. Más módszertanok bevált technikáinak extrém módú (nagyon jó) használata

Minőségmenedzsment és Informatika Test-Driven Development

Ez idézte elı az olyan fejlesztési folyamatokat, amelyek a gyors szoftverfejlesztésre és átadásra összpontosítanak.

Agilis projektmenedzsment

A szoftverfolyamat és s a tesztelés

Tesztelés az XP-ben Tesztelés az XP-ben. A tesztelés kulcsjellemzői:

Integráci. ciós s tesztek. ciós s tesztek (folyt.) Integration Level Testing (ILT) Ficsor Lajos. Miskolci Egyetem Általános Informatikai Tanszék

Székely Klára: Üzleti etika Power Point segítségével

Verifikáció és validáció Általános bevezető

TESZTELÉS A SZOFTVER ÉLETCIKLUSÁN ÁT SZOFTVERFEJLESZTÉSI MODELLEK

MIÉRT KELL TESZTELNI?

Teszt terv Új funkció implementációja meglévı alkalmazásba

A gyártástervezés modelljei. Dr. Mikó Balázs

WebService tesztelés. SOAPui Pro, GreenPepper és Confluence használatával. Verhás & Verhás Szoftver Manufaktúra KNOW-HOW

Tananyagfejlesztési módszer platformfüggetlen tananyagcsomagok elıállítására

30 MB INFORMATIKAI PROJEKTELLENŐR

Test Management Strategy Document. Deák Kristóf Lauly Viktória Kunigunda Csiki Norbert Szabó Zoltán

Unit Teszt. Tóth Zsolt. Miskolci Egyetem. Tóth Zsolt (Miskolci Egyetem) Unit Teszt / 22

Adatstruktúrák, algoritmusok, objektumok

A szoftver-folyamat. Szoftver életciklus modellek. Szoftver-technológia I. Irodalom

Informatikai ellenırzések, az informatika szerepe az ellenırzések támogatásában

Biztonságos szoftverek fejlesztése, a by design elv a gyakorlatban. Hétpecsét LXXXIV. Szakmai Fórum január 16. Hornák Zoltán

A gyorsaság, mint kondicionális képesség

Ami a vízesésen túl van

Hatékony iteratív fejlesztési módszertan a gyakorlatban a RUP fejlesztési módszertanra építve

OpenCL alapú eszközök verifikációja és validációja a gyakorlatban

Object Orgy PROJEKTTERV 1 (9) Adattípusok menedzselése Palatinus Endre

Mesterséges intelligencia alapú regressziós tesztelés

IT ügyfélszolgálat és incidenskezelés fejlesztése az MNB-nél

Szoftvertechnológia 12. előadás. Szoftverfejlesztési módszerek és modellek. Giachetta Roberto. Eötvös Loránd Tudományegyetem Informatikai Kar

IBM Rational AppScan. IBM Software Group. Preisinger Balázs Rational termékmenedzser

Hajdúnánás Városi Önkormányzat Polgármesteri Hivatal

7. rész: A specifikációtól az implementációig az EJB rétegben

MŰSZAKI TESZTTERVEZÉSI TECHNIKÁK STRUKTÚRA ALAPÚ, VAGY FEHÉRDOBOZ TECHNIKÁK TAPASZTALAT ALAPÚ TECHNIKÁK

Mobil Informatikai Rendszerek

Java programozási nyelv

Programozási technológia II 7. előadás. Verifikáció és validáció Giachetta Roberto

JSF alkalmazások teljesítményhangolása JMeter és dynatrace segítségével

cím: 6725 Szeged Bokor u. 18. telefon: Innomedio Kft Scrum módszertan 1.0 Verzió Érvényes: április 1-től

Szolgáltatási szint és performancia menedzsment a PerformanceVisor alkalmazással. HOUG konferencia, 2007 április 19.

A programkód átvizsgálásának hatékonyságát két ok magyarázza:

Agilis szoftverfejlesztés és Scrum

Software Engineering Babeş-Bolyai Tudományegyetem Kolozsvár

és s mobil kommunikáci Learning Konferencia

és s kommunikáci Szépszó Gabriella (szepszo.g@met.hu), Krüzselyi Ilona, Szabó Péter, Zsebeházi Gabriella Klímamodellezı Csoport Éghajlati Osztály

Ething (Scratchmeccs 1. helyezett)

Scrum vagy nem scrum - ahol nem hibázhatunk Röviden a budapesti fejlesztési központról

Bevezetés a programozásba előadás: Alapvető programtervezési elvek

Miskolci Egyetem Alkalmazott Informatikai Intézeti Tanszék A minőségbiztosítás informatikája. Készítette: Urbán Norbert

A folyamat közös fázisai. A szoftverfolyamat modelljei. A vízesésmodell fázis: követelmények elemzése és meghozása

MŰSZAKI TESZTTERVEZÉSI TECHNIKÁK A TESZT FEJLESZTÉSI FOLYAMATA A TESZTTERVEZÉSI TECHNIKÁK KATEGÓRIÁI

Fogalmi meghatározás

Szoftver- és szolgáltatásexport. Vityi Péter IVSZ szakértı

Programrendszerek tanúsítása szoftverminőség mérése

Hálózati folyamok. A használt fogalmak definiálása

A külsı minıségbiztosítás jelentısége az e-kormányzati fejlesztésekben,

A szoftver, mint szolgáltatás. Software as a Service - SaaS

Kód átvizsgálás. Irodalom. (Code review) code review,smart Bear Inc., ! Jason Cohen: Best kept secrets of peer

01. gyakorlat - Projektalapítás

Azonnali fizetési rendszer megvalósítása

Sämling Kft. LEAN menedzsment. A veszteségek folyamatos és szisztematikus kiküszöbölése Több mint eszköztár. 18 év 5 fı terület:

Rendszermodellezés. Modellellenőrzés. Budapesti Műszaki és Gazdaságtudományi Egyetem Méréstechnika és Információs Rendszerek Tanszék

Alkalmazásportfólió. Szoftvermenedzsment. menedzsment. Racionalizálás. Konszolidáció. Nyilvántartás. Elemzés

Szúnyogháló bepattintása A szúnyogháló felengedése (A) (R) Tanács Portalanítás Tisztítás


DW/BI rendszerek kialakítása bevezetői szemszögből. Gollnhofer Gábor - Meta Consulting Kft.

Test Strategy. Monotonitá s tűrése (0 5) Biztonsági tudás (0 5) Adatbázis ismeret (0 5)

LABMASTER anyagvizsgáló program

Szervezetfejlesztési Program

Belső ellenőrzés és compliance. szolgáltatások. Cover. KPMG.hu

Beszéljünk a nyári uborkaszezonról!

Megoldások a mintavizsga kérdések a VIMIAC04 tárgy ellenőrzési technikák részéhez kapcsolódóan (2017. május)

BME Menedzsment és Vállalatgazdaságtan Tanszék. Kérdőívszerkesztés. Kovács István

Kinek szól a könyv? Hogyan épül fel a könyv? Megjelenés előtti szoftver A hálózati kézikönyv tartalma A könyv támogatása Kérdések és megjegyzések

Laborinformációs menedzsment rendszerek. validálása. Molnár Piroska Rikker Tamás (Dr. Vékes Erika NAH)

Florence Nightingale 1910) származás tanulmányutak rendiápolás hiánya krimiháború lámpás hölgy 1868 London intézményes ápolóképzés

A Feldspar fordító, illetve Feldspar programok tesztelése

Test Strategy. Tartalomjegyzék

Code review és continous integration toolok BME-MIT

(Teszt)automatizálás. Bevezető

CAD Rendszerek II. Adaptív tervezés Bottum-up - top-down design

Informatikai projektellenőr szerepe/feladatai Informatika / Az informatika térhódítása Függőség az információtól / informatikától Információs

Autosoft a Profit-generátor. Autosoft AMS. AMS verzió leírása

Bevezetés a programozásba

A hagyományos (modern) és posztmodern regionális politikák jellemzıi

SZAKDOLGOZAT Debrecen 2009

Software Engineering Babeş-Bolyai Tudományegyetem Kolozsvár

Agilis szoftverfejlesztés és Scrum

Weboldalkészítés - keretszerződés

A külsı minıségbiztosítás jelentısége az e-kormányzati fejlesztésekben, a magyar IIER fejlesztésben szerzett tapasztalatok alapján

SZEGHALOM VÁROS ÖNKORMÁNYZATA POLGÁRMESTERI HIVATALÁNAK SZERVEZETFEJLESZTÉSE MINİSÉGIRÁNYÍTÁS AZ ÖNKORMÁNYZATOKNÁL 1. MINİSÉGÜGY AZ ÖNKORMÁNYZATOKNÁL

Felhasználói tulajdonú főtési rendszerek korszerősítésének tapasztalatai az Öko Plusz Programban

Alapvetı európai szociális gondozói tudáskimenetek - Basic European Social Care Learning Outcomes -

Autosoft a Profit-generátor. Autosoft AMS. AMS verzió leírása. 4. rész

Nonprofit szervezeti menedzsment területek

itsmf Magyarország Szeminárium november 6. ITIL, Wiki és Pareto találkozása a request fullfillment fejlesztése érdekében

Együttmőködési rendszerek, csoporttevékenység támogatása 1. rész

Mentális modell, metaforák és analógiák. A desktop metafora. Xerox Star GUI

TANÚSÍTVÁNY. tanúsítja, hogy az. InfoScope Kft. által kifejlesztett. Attribútum tanúsítványok érvényességét ellenőrző SDK InfoSigno AC SDK v1.0.0.

Átírás:

extreme Programming programozástechnika Készítette: Török T k Balázs G5-S8

Kezdetek Martin Fowler : The New Methodology Legtöbb projekt követelményei állandóan változnak Megoldást adaptív módszerek

Kezdetek - Adaptivitás Nagyobb hangsúly (XP értékei): - 1. kommunikáció - 2. egyszerőség - 3. visszajelzés - 4. bátorság - 5. tisztelet Minimális hangsúly: - prediktív hozzáállás, - bürokratikus hozzáállás Számos új lightweight vagy agilis módszertan Kent Beck, Extreme Programming

Fı célja Változtatások költségvonzatának csökkentése Példa: SSADM: követelmény adott, nincs változás, ÁLTALÁBAN DE, ha van változtatás NAGY KÖLTSÉG Törekvés más alapvetı értékek, elvek, és gyakorlatok bevezetésére: egy XP projekt rugalmasabb a késıbbi változtatásra

1. Kommunikáció 2. Egyszerőség 3. Visszajelzés 4. Bátorság 5. Tisztelet

1. Kommunikáci ció Fejlesztıknek megmondani, hogy mi a feladat. Az XP technika = gyors információ-rendszerezı és - terjesztı technika A cél: minden fejlesztı ugyanúgy lássa a rendszert, ahogy a majdani felhasználók is látni fogják. Az XP szereti : egyszerő tervet Metaforát ügyfél - fejlesztıi együttmőködést gyakori szóbeli kommunikációt visszajelzéseket

1. Kommunikáció 2. Egyszerőség 3. Visszajelzés 4. Bátorság 5. Tisztelet

2. Egyszerőség Kezdjük el a lehetı legegyszerőbben, és folyamatosan dolgozzuk át a programot, hogy egyre jobb és jobb legyen. XP ellenzık vallják: ez hátrány, mivel: következı hónap új követelmény rendszer átdolgozás idıveszteség >= megvalósított, de késıbb haszontalan featureökre fordított idı. Az egyszerőség elve: kód zsúfoltság fejlesztı: azt sem tudom ez miért van itt & ezt a metódust én írtam? többletmunka >>> folyamatos átdolgozás által generált munka. Az egyszerőség segíti a kommunikációt: egyszerő terv + egyszerő kód sok programozó könnyen megért.

1. Kommunikáció 2. Egyszerőség 3. Visszajelzés 4. Bátorság 5. Tisztelet

3. Visszajelzés Fejlesztés több területére vonatkozik: Visszajelzés a rendszertıl: részegység-tesztelés Visszajelzés az ügyféltıl: 2-3 hetente funkcionálistesztelés Visszajelzés a csapattól: ügyféltıl új igény reakció visszajelzés (idı, pénz) Visszajelzés + egyszerőség + kommunikáció Kent Beck: Az optimizmus szakmai ártalom a programozókn knál, és s a visszajelzés s rár a gyógy gyír. r.

1. Kommunikáció 2. Egyszerőség 3. Visszajelzés 4. Bátorság 5. Tisztelet

4. BátorsB torság Jellemzıi i példp ldákban: Programkód mai napra írása Kódátdolgozás (egyszerősítés, átláthatóság) Megírt kód eldobása Állandó gondolkodás egy problémán másnap egy perc alatt megoldódik

1. Kommunikáció 2. Egyszerőség 3. Visszajelzés 4. Bátorság 5. Tisztelet

5. Tisztelet Csapattagok tisztelete Magunk tisztelete

1. Kommunikáció 2. Egyszerőség 3. Visszajelzés 4. Bátorság 5. Tisztelet

extreme Programming folyamata 1. Cél C l behatárol rolás: a szoftver release-k fejlesztése. 2. Release: 1-2 hetes Iteráció eredménye Release és interation planning game: Fejlesztık + Ügyfél: release megbeszélés iteráció tartalma Story card: Ügyfél: funkcionalitások írása Fejlesztık: funkciók sorbarendezése Ügyfél: legfontosabb funkciók összeállítása a következı release-ra illetve iterációra Acceptance test: Ügyfél: Példákon keresztül leírt funkcionalitás leírása 3. Iteráci ció vége - összes (automatizált) Acceptance teszt sikeres lefutása.

Story card implementálása 1. Fejlesztık k párban p dolgoznak: Hátrány : Feszített munkatempó Állandó koncentrálás Elıny : Egymás hibáinak észrevétele Egymástól tanulás 2. Session: néhány Story Card implementálása (pár óra) 3. Verzió lekérés: után teszteset készítése Implementálás teszteset készítése Implementálás 4. Story card kész: nem tudnak a fejlesztık újabb tesztet írni 5. Integráci ciós s gép: g új, LETESZTELT, MŐKÖDİ funkciók commit - tálása

Elvek 1. Test-First Development 2. Test-Driven Development

Test-First Development 1. Teszteset írása Szintaktikai hiba megjelenése, a még nem létezı kód miatt 2. Szintaktikai hiba elhárítása Teszt lefordul, lefut, hibát dob 3. Funkció implementálása Csak és kizárólag annyi, amitıl sikeres a teszt

Test-First Development

Test-First Development A tesztek csökkentik a bug-ok számát az új funkciókban. A tesztek jó dokumentációk. A tesztek korlátozzák az osztályok feladatait. A tesztek javítják a programkód minıségét. A tesztek megvédnek a bug-ok újra bevezetésétıl. A tesztek csökkentik a félelemérzetet. Felgyorsul a fejlesztés.

Elvek 1. Test-First Development 2. Test-Driven Development

Refactoring Jelentése: 1. (fn) Szoftver belsı struktúráján végrehajtott olyan módosítás, ami könnyebben érthetıvé és könnyebben módosíthatóvá teszi azt anélkül, hogy a kívülrıl megfigyelhetı viselkedésen módosítana. 2. (ige, angolul), a fenti tevékenység kivitelezése.

Refactoring Kent Beck: code smells : Duplikált kód Terjedelmes osztály Feature Envy Data Clumps

Refactoring folyamata

Test-Driven Development Test-Driven Development: Test-First Development + Refactoring

Test-Driven Development

Elvek 1. Test-First Development 2. Test-Driven Development

Test-Driven Development 1. Az új funkciók egyszerő teszteléséhez és implementálásához elengedhetetlen az egyszerő design. 2. Az egyszerőség eléréséhez a refactoring-ot alkalmazzuk 3. A refactoring viszont elképzelhetetlen az automatizált tesztek nyújtotta védıháló nélkül.

Standish Group - Chaos jelentés 1999-2004

Forrás Juhász Sándor Ferenc: Az Extreme Programming programozástechnikai elvei (2006. november 30.)

Köszönöm m a figyelmet!