Proces podstawowy

Subskrybuj RSS A A A
17 lipca 2006
Jacek Sokulski

W poprzednim artykule poznaliśmy jeden z najważniejszych elementów teorii Alexandera: procesy żywe - jedyne procesy prowadzące do powstania dobrych systemów złożonych. Dziś przyjrzymy się dokładniej strukturze takich procesów.

W poprzednim artykule poznaliśmy jeden z najważniejszych elementów teorii Alexandera: procesy żywe - jedyne procesy prowadzące do powstania dobrych systemów złożonych. Dziś przyjrzymy się dokładniej strukturze takich procesów.

W podejściu Alexandera system nie jest traktowany jako zlepek niezależnych części, lecz jako niepodzielna całość. Również procesy żywe są holistyczne. Proces taki zawsze oddziałuje na całość. Nawet jeżeli działa lokalnie, głównym kryterium jakości procesu jest wpływ na całość systemu. Archetypem procesu żywego jest proces rozwoju zarodka: na każdym etapie rozwoju mamy do czynienia z całością (jeszcze nie w pełni rozwiniętą). Każdy następny krok w procesie wynika z aktualnej całości i zachowuje jej strukturę. Nie są dodawane nowe części, lecz rozwijane to, co istnieje już w formie utajonej.

Proces żywy musi być z jednej strony zachowawczy (zachowywać strukturę całości, na której działa), a z drugiej twórczy (rozwijać i wzbogacać istniejącą strukturę). Takie przekształcenie całości Alexander nazywa przekształceniem zachowującym strukturę (Structure-Preserving Transformation - SPT). W procesie żywym każdy krok jest transformacją tego rodzaju. W informatyce mamy podobne pojęcie - refaktoryzacja, czyli przekształcenie kodu zachowujące jego funkcję - na przykład wydzielenie wspólnej nadklasy z dwóch wcześniej niepowiązanych klas.

Przekształcenia zachowujące strukturę są ogniwem łączącym procesy żywe z opisywanymi w jednym z poprzednich artykułów piętnastoma cechami podstawowymi (cechami strukturalnymi dobrych systemów). Każde przekształcenie wprowadza do systemu jedną lub więcej cech podstawowych. Można zatem wyróżnić piętnaście przekształceń podstawowych - każde odpowiedzialne za wprowadzenie jednej cechy podstawowej. Są to "atomy", z których budowane są procesy żywe. Ogromna różnorodność procesów żywych w naturze i wykonywanych przez ludzi została sprowadzona do kilkunastu transformacji! W tym miejscu narzuca się analogia ze zbudowanym z czterech rodzajów nukleotydów łańcuchem DNA, na którym opiera się cała różnorodność biologiczna w przyrodzie.

Tak na marginesie, pouczające byłoby przyjrzenie się refaktoryzacjom w informatyce z punktu widzenia piętnastu przekształceń podstawowych. Na przykład wspomnianą wyżej refaktoryzację można potraktować jako wprowadzenie lokalnej symetrii w systemie (dwie niezwiązane klasy stają się symetryczne przez wprowadzenie wspólnej nadklasy).

Proces podstawowy

Przekształcenia podstawowe nie mówią jednak jak z nich tworzyć procesy. Procesy żywe mogą być proste, trwać chwilę lub bardzo złożone, trwać setki lat (np. budowanie miasta). Jednak każdy proces - niezależnie od wielkości, czy dotyczy budynków, firmy, systemu informatycznego, planowania, projektowania, czy konstrukcji - jeżeli jest częścią procesu żywego, zawsze będzie posiadał określoną formę. Jeżeli zaczniemy rozkładać proces żywy na drobniejsze podprocesy okazuje się, że jest kombinacją lub kombinacją kombinacji uniwersalnego procesu, nazwanego przez Alexandera procesem podstawowym. Innymi słowy, proces podstawowy jest ogólnym szablonem na wyższym poziomie abstrakcji niż przekształcenia podstawowe, jest to też poziom bardziej dostosowany do zastosowania w procesach tworzonych przez człowieka. Stanowi on kontekst dla użycia przekształceń podstawowych.

Proces podstawowy wygląda mniej więcej tak. Zaczynamy od pewnej częściowo rozwiniętej całości (systemu). Jak najgłębiej przyglądamy się ogólnej strukturze całości - zarówno widocznej, jak i ukrytej. Następnie określamy, pod jakim względem struktura jest najsłabsza jako całość, najmniej spójna. Przyglądamy się uśpionym (potencjalnym lub nie w pełni rozwiniętym) centrom i wybieramy centrum, które najbardziej przyczynia się do słabości całości. Wybrane centrum jest tym, na którym będziemy pracować. Używamy jednego lub więcej z piętnastu elementarnych przekształceń zachowujących strukturę, żeby wzmocnić strukturę jako całość. Teraz sprawdzamy, czy struktura jako całość jest silniejsza, bardziej spójna. Sprawdzamy też, czy to co zrobiliśmy jest najprostszą rzeczą. Wracamy na początek cyklu i stosujemy ten sam proces ponownie. Każdy proces żywy jest iteracyjnym powtórzeniem procesu podstawowego dziesiątki, setki, tysiące razy, aż do momentu, gdy nie można wzmocnić struktury całości.

Zwróćmy uwagę, że podobny proces jest często stosowany jako cykl usprawniania procesu w firmie. Najpierw jest faza oceny aktualnego procesu, wybranie obszaru do usprawnienia (np. zbieranie wymagań), planowanie usprawnień, wdrażanie zmian, weryfikacja wpływu wprowadzonych zmiany i przejście do kolejnego cyklu.

Chociaż proces podstawowy może wydawać się bardzo prosty, to ma on ogromne możliwości, podobnie jak DNA w biologii. Opis powyższy jest idealizacją, w praktyce procesy żywe często są mniej formalne, nie muszą operować w terminach centrów.

Proces naturalny

Proces żywy można rozumieć również jako najbardziej naturalny proces w danych warunkach. W pewnym sensie idea procesu żywego jest tylko formalnym sposobem mówienia o procesie naturalnym. Istnieją różne rodzaje procesów naturalnych. W jednym procesie naturalnym robisz po kolei rzeczy, które przychodzą ci do głowy. "Jest to proces naturalny, w tym sensie, że nie ma narzuconego rytmu i porządku. (...) Ale mądrzejszy proces naturalny obejmuje głębsze rzeczy, które nie są oczywiste dla wykonawcy. Jest to bliższe zen, gdzie celem jest całkowita naturalność, lecz zawiera również głęboką mądrość" - pisze Alexander.

Proces żywy obejmuje nasze naturalne działanie, ale jest też głębszy, włącza dodatkowe centra, których naiwna intuicja mogłaby nie wziąć pod uwagę. Innymi słowy, pozwala robić lepiej to co robimy naturalnie.

Powstaje (naturalne) pytanie, co to znaczy, że proces jest naturalny? Jak można porównać naturalność dwóch procesów? O tym w kolejnym odcinku cyklu. Związane jest to z, według Alexandera, najważniejszym i najgłębszym (również najbardziej kontrowersyjnym) aspektem całej teorii - głębokim uczuciem.

<hr>W Polsce związkami prac Alexandera z informatyką zajmuje się projekt Humanistyczna Inżynieria Oprogramowania ( http://www.projekt-hio.info ).

Oceń artykuł

średnio: 0 liczba ocen: 0

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