Wuwejův zápisník

Peter Eeles, Peter Cripps: Architektura softwaru

07.05.2012 23:59, Wu | počítače | knihy | komentáře -

obálka knihy Peter Eeles, Peter Cripps: Architektura softwaruK úvodním kapitolám, popisujícím frameworky, notace, normy a metodiky, jsem se vracel dvakrát - abych našel, jestli autory popisovaný způsob návrhu architektury je nějaký standard, nebo jestli je to jejich osvědčený způsob práce. Teprve napodruhé jsem uspěl a našel, že jde o kombinaci poznatků z frameworků 4+1, Zachman a Rozanski & Woods. Mělo to asi být více zdůrazněné. To je ale asi jediný nedostatek publikace, podtitul „Nepostradatelný průvodce návrhem softwarové architektury, která funguje“ nelže.

Nejprve bychom si měli říct, co je to architektura softwaru. Je to definice struktury a chování programu, soustředí se na zásadní prvky a potřeby investorů, zahrnuje podstatná rozhodnutí, ovlivňuje tým a je ovlivněna prostředím a stylem navrhování.

Je třeba rozlišovat softwarovou architekturu a podnikovou, enterprise architekturu. Podniková se zabývá integrací a jde napříč systémy, softwarová architektura řeší systém a zabývá se jím do hloubky.

Před lety se o architektuře a architektech příliš nemluvilo, návrhář systému byl zkrátka systémový analytik a když byl k projektu povolán (enterprise) architekt, bylo to kvůli podnikové integraci a dalekosáhlým infrastrukturním rozhodnutím. Dnes, jak ostatně dokládá tato kniha, se chápání posouvá. Myslím si, že je to rostoucí složitostí sofware, že i ten nejjednodušší online produkt musí řešit věci, o kterých se tvůrcům před lety ani nezdálo. Web, mobilní přístup, potenciální miliony zákazníků...

Softwarový architekt pak (cit. str. 32-37):

  • je technickým vedoucím
  • role architekta může být vykonávána týmem
  • rozumí procesu vývoje
  • má znalosti z obchodní oblasti
  • má technologické znalosti
  • má návrhové zkušenosti
  • umí programovat
  • umí dobře komunikovat
  • přijímá rozhodnutí
  • si uvědomuje organizační politiky
  • je vyjednavačem

Jak vidno, práce je to komplexní. Metodika Eelese a Crippse popisuje role, výsledky práce, jednotlivé činnosti a úkoly, které je třeba v rámci iterativního procesu zpracovat. Autoři nejprve projdou základní pojmy a obecně platné principy (jak modelovat, jak dokumentovat, jak navrhovat opětovně použitelné prvky architektury), popíší případovou studii, na které metodiku demonstrují a pak už se do toho pustí pořádně - od definice požadavků, přes logickou a fyzickou architekturu až po pokročilá témata jako je řízení projektů, zvládání distribuovaného týmu nebo systému systémů.

Zaujalo mě množství hledisek, kterými se dá na software hodnotit a především jejich maticové rozdělení. Některá hlediska jdou napříč jinými, což rozhodně analýzu nezjednodušuje a je třeba na to pamatovat (tabulka podle str. 69 a 78):

hledisko požadavků funkční nasazení ověření
aplikační ... ... ... ...
infrastruktury ... ... ... ...
správy systémů ... ... ... ...
dostupnosti ... ... ... ...
výkonu požadavky na výkon vazby mezi komp. umístění komp. + specif. hardwaru + topologie distribuce prvky ověření výkonu
bezpečnosti požadavky na zabezp. zásady zabezp. + ověřování uživ. + autorizace uživ. firewally prvky ověření zabezp.

Metodika je hodně podrobná, kdyby ji člověk chtěl využít zcela, zahltí se množstvím dokumentů, schémat a dalších artefaktů - to by ale bylo špatné pochopení knihy. Autoři musí svůj postup popsat v maximalistické variantě, aby sloužila jako vodítko, zatímco architekt si ji musí přizpůsobit a zjednodušit, vybrat věci, které při konkrétním rozsahu projektu dávají smysl.

Na konci najdete přehled pojmů, odkazů, rejstřík, ale především přílohy, které jsou klíčové a k nimž se pravděpodobně budete vracet:

  • Metamodel architektury softwaru
  • Katalog hledisek
  • Přehled metody
  • Kontrolní seznam požadavků na architekturu

V češtině mnoho knih o softwarové architektuře není - o to důležitější je, že tato je podařená.

nakladatelství Computer Press, Brno 2011, ISBN 978-80-251-3036-0, 497 Kč

12345
1336427940000

Informace

Kontakt

Google search

Kategorie

Archiv

STRÁNKY ARCHIVOVÁNY NÁRODNÍ KNIHOVNOU ČR

CBDB.cz – Databáze knih a spisovatelů, knihy online