Ekstremalnie znaczy z dyscypliną

XP a problem jakości

Pytanie o jakość produktów powstających przy użyciu XP właściwie nasuwa się samo. Czy tak "lekka" metodyka może dać w wyniku dobre jakościowo oprogramowanie, spełniające wymagania klienta? Otóż badania pokazują, że XP wcale nie jest tak chaotycznym procesem, jak to się wydaje na pierwszy rzut oka. Mark C. Paulk, współtwórca modelu CMM, ocenił, że XP implementuje praktyki drugiego poziomu tego modelu, spełniając także kilka wymagań poziomów wyższych. Oczywiście, nie daje to gwarancji dostarczenia dobrego produktu, a stwierdza jedynie, że XP jest dosyć dojrzałym procesem. To, czy tworzony system będzie taki - zależy już w dużym stopniu (większym niż w przypadku klasycznych metodyk) od zespołu i jego doświadczenia - ale na tym polega odmienność agile methodologies.

Wynika stąd, że XP nie nadaje się do wykorzystywania w wielu projektach, dlatego warto określić granice jego stosowania. Pierwsze ograniczenie to zapewne liczebność zespołu - Beck wspomina o kilkunastu osobach, inni - dwudziestu. Nie wydaje się, aby XP działało skutecznie przy większych zespołach. Podobnie wygląda sprawa z czasem trwania projektu: raporty wspominają o przedsięwzięciach co najwyżej kilkunastomiesięcznych.

Są to zatem przedsięwzięcia o co najwyżej średnim rozmiarze.

XP, zdaniem Becka, nie nadaje się także do realizacji systemów w technologiach o wykładniczym koszcie wprowadzenia zmiany (rys. 1), natomiast gdy zespół dobrze zna technologię, a wykres kosztu zmiany w czasie jest spłaszczony, wydaje się funkcjonować bardzo dobrze.

Ostatnie ograniczenie, bardzo ważne z punktu widzenia np. ustawy o zamówieniach publicznych, to model współpracy między zamawiającym a wykonawcą. XP nie działa dobrze przy kontrakcie o ustalonej cenie, terminie i zakresie - większość zalet tej metodyki nie odgrywa żadnej roli. Najlepszym środowiskiem jest abonament na rozwijanie systemu, usługa rozbudowy systemu w kierunku wskazywanym przez klienta. Wymaga to jednak znacznie większego zaufania po obu stronach i delegowania przedstawiciela klienta do pracy w zespole, a przede wszystkim innych uregulowań prawnych.

Podsumowanie

Skuteczność XP zależy od tak wielu czynników, że znalezienie uniwersalnej recepty na jego stosowanie wydaje się niemożliwe. Pozostaje ono domeną rosnącego grona entuzjastów, czego dowodem jest choćby Agile Manifesto - ogłoszona w 2001 r. deklaracja o wyższości lekkich i zwinnych metodyk nad tradycyjnymi i ciężkimi.

Coraz większa liczba raportów, konferencji i książek świadczy o tym, że temat ten budzi także zainteresowanie autorytetów inżynierii oprogramowania (wystarczy wspomnieć T. DeMarco, M. Paulka czy T. Gilba).

Pierwotnie XP bardzo rygorystycznie wymagało stosowania wszystkich praktyk, jednak modyfikacje okazały się konieczne. Utrudnia to wprawdzie ocenę metodyki, ale nadal pozwala ona skutecznie tworzyć oprogramowanie. Rewolucja spod znaku Agile Manifesto nieco przygasła razem z internetowym boomem, jednak nadal lekkie metodyki budzą spory i kontrowersje. Prawdopodobnie nie zajmą one miejsca klasycznych, ciężkich procesów, jednak już teraz stanowią dla nich - w określonych warunkach - interesującą alternatywę. Wbrew obiegowym opiniom, alternatywę nie wymuszającą kompromisu pod względem jakości.

Bartosz Walter jest asystentem w Instytucie Informatyki Politechniki Poznańskiej. Specjalizuje się w lekkich metodykach. Jest także współautorem poznańskiego portalu miejskiego.


TOP 200