Być jak jaszczurka

Subskrybuj RSS A A A
24 czerwca 2008
Jakub Chabik

Zwinność to nie cecha metod i narzędzi, lecz organizacji.

Zwinność to nie cecha metod i narzędzi, lecz organizacji.

Nie ma chyba bardziej odmienianego przez przypadki słowa niż "zwinność". Odpowiednik angielskiego agile przez środowisko związane z rozwojem aplikacji traktowany jest jako nowa "srebrna kula". Od czasu, gdy w kurorcie narciarskim w amerykańskim stanie Utah zdefiniowany został tzw. agile manifesto, a Kent Beck opublikował książkę na temat extreme programming, "zwinność" postrzegana jest jako antidotum na tradycyjne bolączki inżynierii oprogramowania: długi cykl od pomysłu do rozwiązania, chybione lub niekompletne wymagania, złą jakość produktu końcowego i kłopoty ze współpracą pomiędzy zamawiającym a wykonawcą.

Mało kto zdaje sobie sprawę, że od zwinności w rozumieniu technologii do zwinności, która przynosi konkretną korzyść biznesową jest długa druga. Agility to nie tylko programowanie, ale przede wszystkim zarządzanie. To zarządzanie organizacją IT w taki sposób, by mogła szybko, elastycznie i inteligentnie odpowiadać na potrzebę biznesową.

Zwinność jako sposób wytwarzania systemów

Najbardziej znana twarz zwinności to ta związana z rozwojem aplikacji. Dość popularne - także w Polsce - są elementy extreme programming (XP), najczęściej określane jako:


  • ścisła interakcja z użytkownikiem,

  • iteracyjny rozwój aplikacji,

  • maksymalna dekompozycja,

  • budowanie testu zanim budowana jest aplikacja/komponent,

  • programowanie w parach.


Z ducha XP wyrastają inne "zwinne" metody, nastawione bardziej na projekt niż produkt software'owy. Do najbardziej znanych należą Agile Project Management (APM) i Scrum. Obie koncentrują się na podobnych wartościach:

  • samoorganizującym się zespole,

  • przyrostowym definiowaniu funkcjonalności,

  • bardzo mocnym zaangażowaniu użytkownika,

  • odejściem od kaskadowego cyklu na rzecz iteracyjnego i adaptacyjnego,
  • wymienności ról w zespole.


Patrząc z perspektywy budowania produktu i prowadzenia projektów według zasad agile, widać, że jest to po prostu alternatywny pomysł, konstruowany w dużej mierze jako antyteza tradycyjnego podejścia do budowy systemów i prowadzenia przedsięwzięć informatycznych. Realizm, który przejawiają zarówno twórcy agile manifesto, jak i entuzjaści "zwinnych metod" (np. akceptowanie faktu, że zmiany w założeniach są naturalne) wynika nieomal w całości z praktycznych spostrzeżeń w rzeczywistych projektach prowadzonych w przedsiębiorstwie.

Pierwszy poziom "zwinności" to "zwinność metody" - rozumiana jako stosowania paradygmatu agile w programowaniu i zarządzaniu projektem.

Zwinność jako grupa technologii

Długa i usiana przeszkodami jest droga od oprogramowania do rozwiązania użytecznego biznesowo. System to nie tylko kod wynikowy wytworzony tą czy inną metodą, ale zdolność wsparcia potrzeby biznesowej środkami technologicznymi.

Te same zasady, które leżą u podstaw zwinnego rozwoju systemów, można zastosować do innych elementów rozwiązania informatycznego: a więc serwerów, platform systemowych i aplikacyjnych, sieci lokalnych i rozległych, samych aplikacji. Tak rozumiana zwinność to korzystanie z technologii, które dają zdolność błyskawicznej, choć niekoniecznie pełnej i dokładnej odpowiedzi na wymagania użytkownika - nawet jeśli te ostatnie wyrażone są w sposób niepełny lub niepewny.

Typowym przykładem rozwiązania technologicznego, które znakomicie wpisuje się w zasady agile, jest wirtualizacja serwerów. W normalnym, kaskadowo prowadzonym projekcie, na podstawie wymagań biznesowych oraz architektury logicznej powstaje projekt techniczny systemu, a w jego składzie - sprzęt, na którym dana aplikacja będzie działać. Proces zakupu serwera trwa od kilku tygodni do kilku miesięcy, w zależności od jego klasy. Wirtualizacja umożliwia powołanie takiego serwera w ciągu pojedynczych godzin, ewentualnie dni, i przekazanie go do eksploatacji. Jeśli system się sprawdzi - można z czasem wymienić go na maszynę fizyczną; jeśli nie - zwolnione "moce" można będzie przeznaczyć do innych zadań.

Inny przykład to tworzenie systemów opartych o komponenty. Dobudowanie jakiejś funkcjonalności do aplikacji to najczęściej podmiana jednego komponentu albo napisanie nowego. Wykonanie go jest względnie szybkie, przetestowanie proste, a ryzyko wdrożenia i nakłady z tym związane - ograniczone. Dzięki technologiom komponentowym budowa nowych aplikacji albo rozbudowa istniejących nie musi podlegać sztywnemu, kaskadowemu cyklowi rozwoju.

Ale technologia to dopiero drugi z elementów. Trzeci to zdolność organizacji skorzystania z niej; całe "zaplecze", które sprawia, że to, co technicznie wykonalne, staje się realne.

Oceń artykuł

średnio: 3.8 liczba ocen: 3
1  2  dalej »

Komentarze (0)

Najnowsze

Państwo do konsolidacji

Obywatele uważają administrację publiczną za jeden organizm. W rzeczywistości jest to kilka tysięcy oddzielnych struktur, obrosłych biurokratycznymi naroślami. Czy można zracjonalizować działanie państwa? Jak w tym może pomóc informatyka?

Zarządzanie po japońsku

W praktyce przemysłowej wypracowano szereg skutecznych metod zarządzania. Wiele powstało w Japonii. Dlaczego, mimo ich efektywności, nie zawsze są stosowane w biznesie?

e-Sąd z odsieczą sprawiedliwości

Polski wymiar sprawiedliwości postrzegany jest jako skostniały i opieszały. Tymczasem kolejne e-usługi udostępniane przez Ministerstwo Sprawiedliwości ułatwiają życie przedsiębiorcom i usprawniają pracę sądów.

e-Zdrowie w Polsce i na świecie

Projekty informatyzacji służby zdrowia realizowane są na świecie z różnym powodzeniem. Skąd Polska mogłaby czerpać wzorce? A może jesteśmy skazani na własne rozwiązania?

Raport Państwo 2.0, czyli nowa wizja informatyzacji państwa

Michał Boni, minister administracji i cyfryzacji, zaprezentował raport "Polska 2.0. Nowy start dla e-administracji". Przedstawia on informacje na temat stanu realizacji projektów będących w gestii nowo utworzonego ministerstwa oraz prezentuje kierunki dalszych działań związanych z informatyzacją i cyfryzacją administracji publicznej w naszym kraju.

Cyberprzestępcy podążają za użytkownikami

Już dwie na trzy polskie firmy odnotowały ataki lub awarie, które spowodowały spadek produkcji. Co trzecia firma utraciła dane. Liczba takich przypadków będzie rosła, bo hakerzy biorą na cel najbardziej masowe technologie. Szybko reagują też na zmiany w firmowej architekturze.

Jak zaplanować karierę w branży IT

Doświadczenia łączone na różnych stanowiskach w firmach o odmiennych profilach są szczególnie cenione przez pracodawców. Dlatego warto głęboko przeanalizować możliwości rozwoju kariery, które obecnie stwarza rynek IT.

Rekomendacje



Serwisy IDG - Warunki obsługi - Kontakt - Redakcja - Regulamin - O nas - Polityka prywatności - Serwis zgodny z ASME
Reklama - Licencjonowanie treści - Prenumerata: Computerworld, Networld, PC World
Computerworld Polska i Computerworld Polska online są znakami towarowymi IDG Poland SA.
© Copyright 2012 International Data Group Poland S.A. 04-204 Warszawa ul. Jordanowska 12 tel.(+4822)321-78-00 fax(+4822)321-78-88