Zákony informatiky: Organizace, její struktura a IT architektura podle Mela Conwaye

Zdroj: Pixabay

Původně psaný pro Harvard Business Review, ovšem pro nedostatek důkazů zamítnutý článek Mela E. Conwaye byl nakonec pod stejným názvem How do committees invent? (Jak vynalézají výbory a komise?) publikován v r. 1968 v dubnovém čísle Datamation, tehdy nejvýznamnějším IT magazínu v USA.

Conwayovy laserově přesné postřehy a jasnozřivé vize (publikované v roce 1968) jsou fascinující i z toho pohledu, že podnikové informační systémy (IS) nebyly tou dobou ještě ani v plenkách, snad v prenatálním stádiu. To mu však nebránilo v konstatování faktu, že IS v každé organizaci je nastavený přesně tak, jak spolu lidé z jednotlivých útvarů navzájem komunikují, respektive nekomunikují. Vycházel přitom samozřejmě z programátorských projektů, ne z dnešních zkušeností zavádění krabicových potažmo cloudových podnikových systémů. Ty na svůj nástup teprve čekaly.

Každá organizace navrhující svůj systém, nevyhnutelně vytváří design, jehož struktura je kopií komunikační struktury organizace.

Když Fred Brooks citoval článek a jeho základní myšlenku ve své elegantní klasice The Mythical Man-Month a nazval ji Conwayovým zákonem, bylo vymalováno. Ta myšlenka zní takto: Každá organizace navrhující svůj systém (zde definovaný šířeji než jen IS), nevyhnutelně vytváří design, jehož struktura je kopií komunikační struktury organizace.

Aby také Brooksovi Conwayův článek nekonvenoval, když v něm jeho autor říká, že větší týmy dodají lepší výsledky snad při loupání brambor nebo stavbě zdi, ovšem u stavění systémů to fungovat nemusí! Vždyť za sedm let poté přichází Brooks se svým pravidlem.

Za prvé, velký tým nemusí nutně pracovat rychleji, a menší tým může dodat lepší výsledek. Conway tvrdí, že i když více lidí v týmu může „stačit u loupání brambor“, pro návrhy systémů to často neplatí.

K této problematice se vrátil ještě v r. 2010, tj. po 42 letech, když na svých stránkách napsal:

Ukázalo se, že jde o princip s mnohem širší využitelností než jenom v softwarovém inženýrství, kde se na něj obvykle vyskytují odkazy. Nabádám vás, abyste si přečetli můj příspěvek a poté se rozhlédli kolem sebe a našli jeho další aplikace. Mým současným favoritem je komplex sociálních otázek zahrnujících chudobu v Americe: přístup na trh práce, bydlení, vzdělání a zdravotní péči. Po přečtení článku se zamyslete nad tím, jak naše různé vládní struktury ovlivňují přístupy k těmto systémům.

Namátkou další pozoruhodné myšlenky z článku:

Snižuje koordinace produktivitu?

Může se zdát, že koordinace mezi týmy a skupinami snižuje produktivitu jednotlivce v malé skupině. Ve skutečnosti poskytuje jedinou možnost, aby autonomní týmy a skupiny byly schopné konsolidovat své úsilí do návrhu jednotného systému.

Příklad z Conwayova článku (poplatný době svého vzniku): Výzkumná organizace s osmi zaměstnanci má vyprodukovat dva kompilátory pro programovací jazyky Cobol a Algol. Po úvodních odhadech obtížnosti a pracnosti pro oba úkoly bylo pět pracovníků přiděleno ke Cobolu a zbylí tři pro Algol. A světe div se! Výsledný překladač Cobolu poběží v pěti fázích, Algolu ve třech.

Toho se týká tzv. Raymondova varianta Conwayova zákona: Pokud máte čtyři týmy pracující na kompilátoru, dostanete čtyřprůchodový kompilátor. (Eric S. Raymond)

Jiný příklad: Manažer zadávající pro firmu obtížný konstrukční úkol může volit mezi dvěma dodavateli  – nově vzniklou malou organizací, jež nabízí intuitivně přitažlivé řešení za mnohem méně peněz, než stanovuje rozpočet – a zavedeným konvenčním dodavatelem s mnohem vyšší nabídkovou cenou. Je nasnadě, že pokud malý a progresivní dodavatel nedodá kýžený výsledek, bude on jako manažer obviněn vedením firmy ze špatného rozhodnutí, zatímco pokud selže zavedený dodavatel, bude to pouze důkaz, že problém je skutečně velmi náročný.

V čem je problém? Jeho velká část se týká uvažování o měření zdrojů, jež vychází z konvenční účetní teorie. Podle této teorie jsou jednotkou zdroje peníze (dolar) a všechny zdroje musí být měřeny pomocí měrných jednotek, které jsou převoditelné na dolar. Když budeme tento zdroj měřit lidským úsilím, potom bude měrnou jednotkou násobek počtu hodin odpracovaných každým pracovníkem a jeho hodinových nákladů za celý pracovní tým.

Předpoklady, jež mohou být dostatečné pro stavbu cihlové zdi, selhávají při návrhu systémů.

Jedním z omylů za těmito výpočty je vlastnost linearity, která říká, že dva pracovníci pracující jeden rok anebo sto pracovníků pracujících jeden týden (při stejné hodinové sazbě) jsou zdroji stejné hodnoty. Nejsou. Za předpokladu, že dva a sto pracovníků nemůže pracovat ve stejné organizační struktuře, je nabíledni, že nenavrhnou ani stejné systémy. Proto hodnota jejich úsilí nemůže být srovnatelná. Ze zkušenosti víme, že dva pracovníci, pokud jsou dobře vybráni, nám poskytnou lepší systém. Předpoklady, jež mohou být dostatečné pro stavbu cihlové zdi, selhávají při návrhu systémů.

Reflexe Parkinsona a Metcalfa

Rovněž Parkinsonův zákon hraje významnou roli při plánování práce. Parkinson říká, že manažeři vždy tíhnou k větším týmům, zatímco zákon Conwayův naznačuje, že je lepší pracovat v týmech malých. Dokud budou prestiž a úsilí manažerů vázány na velikost jejich rozpočtů, budou tito motivováni k rozšiřování svých oddělení, což je naprosto nevhodný princip pro návrhy systémů. Jakmile určitá organizace jednou existuje, bude samozřejmě využita. Zřejmě největším společným faktorem mnoha špatně navržených systémů, byla dostupnost projektové organizace, která právě potřebovala zaměstnat.

Dalším neblahým krokem v dezintegraci týmů při návrhu systému je fragmentace komunikační struktury organizace. Ta obvykle začíná s delegováním. Teorie elementární pravděpodobnosti nám říká, že počet možných komunikačních cest v organizaci je přibližně polovinou druhé mocniny počtu lidí v organizaci. Dorozumívání v rámci velikosti týmu funguje na principu Metcalfeho zákona, zde graf dole.

I v malých organizacích je nutné omezovat komunikaci, aby se lidé někdy mohli věnovat práci.

I v malých organizacích je nutné omezovat komunikaci, aby se lidé někdy mohli věnovat práci. Conway zde přímo říká, že výzkum, jenž povede k technikám umožňujícím efektivnější komunikaci mezi pracovníky v týmech, bude hrát nesmírně důležitou roli ve struktuře správy systémů.

Běžná manažerská praxe klade určitá numerická omezení na složitost organizační struktury. V organizaci vojenského střihu musí mít každý jedinec nejvýše jednoho nadřízeného a přibližně do sedmi podřízených. Do té míry, do jaké organizační protokol omezuje komunikaci mezi jednotlivými liniemi řízení, se komunikační struktura organizace bude podobat jejímu administrativnímu uspořádání. To je jeden z důvodů, proč organizace vojenského typu navrhují systémy, které vypadají jako jejich organizační schémata.

Organizace vojenského typu navrhují systémy, které vypadají jako jejich organizační schémata.

Další varianty Conwayova zákona

Co z toho všeho vyplývá? Pokud navrhujete nový systém (ať už je to cokoli), odložte rozhodnutí o organizaci a uspořádání týmů na co nejpozději. Předčasným ustanovením organizace se připravíte o možná dobrá řešení. To platí i opačně. Když máte k dispozici existující systém, musí kolem něj být vystavěna efektivní organizační struktura, tj. tým, resp. více efektivně koordinovaných týmů.

Kromě Raymondovy varianty Conwayova zákona existují další. Coplien-Harrisonova varianta hovoří o kompatibilitě organizace s IT architekturou. Pokud při implementaci nového systému části organizace (týmy, oddělení, divize) úzce neodrážejí jeho podstatné části, nebo pokud vztahy mezi jednotlivými částmi organizace nezrcadlí vztahy mezi částmi tohoto systému (moduly, procesy, workflow, atd.), potom lze očekávat, že implementační projekt bude v potížích. Proto je vždy potřebné předem se ujistit, že organizace je kompatibilní s navrhovanou architekturou připravovaného systému.

Bevanova varianta se zabývá dopadem Conwayova zákona na design webových stránek organizace a zní: Organizace často vytvářejí webové stránky s obsahem a strukturou, která odráží spíše vnitřní zájmy organizace, než potřeby uživatelů a návštěvníků této stránky. Podobného efektu lze dosáhnout, pokud webové stránky procházejí návrhy různých výborů a komisí.

 

Melvin Edward Conway je kybernetik a programátor. Za svého profesního života se intenzivně zabýval kompilátory různých jazyků – též Pascalu pro Apple, Mac Pascal (1984). Od r. 1970 se věnoval vývoji známého počítačového jazyka MUMPS využívaného ve zdravotnictví. Rovněž učil matematiku a fyziku na střední škole Chelsea High School ve státě Massachusetts.

 

Seriál Zákony informatiky:

Exit mobile version