Architektura oprogramowania. Metody oceny oraz analiza przypadków - Helion
Tytuł oryginału: Evaluating Software Architectures
Tłumaczenie: Bartłomiej Garbacz
ISBN: 83-7197-929-0
stron: 332, Format: B5, okładka: twarda
Data wydania: 2003-02-11
Księgarnia: Helion
Cena książki: 39,00 zł
Podstawą każdego systemu oprogramowania jest jego architektura, czyli sposób, w jaki oprogramowanie jest tworzone z niezależnie rozwijanych komponentów oraz mechanizmy interakcji i wzajemne zależności pomiędzy nimi. Jeśli system ma być tworzony przez więcej niż jedną osobę, właśnie architektura pozwala im na wzajemną komunikację. Choć architektura jest postrzegana jako jeden z najważniejszych aspektów rozwoju współczesnych systemów, to jej ewaluacja niemal nigdy nie staje się standardową częścią procesu rozwojowego.
Wykorzystując wyraźnie określone związki między decyzjami dotyczącymi architektury projektu a wynikającymi z nich właściwościami oprogramowania, niniejsza książka opisuje metody ewaluacji architektury oraz przypadki ich praktycznego zastosowania. Książka "Architektura oprogramowania. Metody oceny oraz analiza przypadków" prezentuje podstawową wiedzę pojęciową z zakresu metod oceny architektury i stanowi podręcznik opisujący krok po kroku proces takich ewaluacji przeprowadzanych w przypadku wielu organizacji rządowych i przemysłowych.
Architektura oprogramowania to gwałtownie rozwijająca się dziedzina badań i działań praktycznych w zakresie inżynierii oprogramowania. Książka prezentuje w szczególności trzy metody jej ewaluacji:
- metodę analizy kompromisów architektonicznych (Architecture Tradeoff Analysis Method, ATAM)
- metodÄ™ analizy architektury programowej (Software Architecture Analysis Method, SAAM)
- czynne przeglądy projektów pośrednich (Active Reviews for Intermediate Designs, ARID)
Osoby które kupowały "Architektura oprogramowania. Metody oceny oraz analiza przypadków", wybierały także:
- Zosta 149,00 zł, (44,70 zł -70%)
- Metoda dziel i zwyci 89,00 zł, (26,70 zł -70%)
- Matematyka. Kurs video. Teoria dla programisty i data science 399,00 zł, (119,70 zł -70%)
- Design Thinking. Kurs video. My 129,00 zł, (38,70 zł -70%)
- Konwolucyjne sieci neuronowe. Kurs video. Tensorflow i Keras w rozpoznawaniu obraz 149,00 zł, (44,70 zł -70%)
Spis treści
Architektura oprogramowania. Metody oceny oraz analiza przypadków -- spis treści
Wskazówki dla Czytelnika (15)
Wstęp (19)
1 Istota architektury oprogramowania (23)
- 1.1. Architektura jako medium komunikacyjne pomiędzy głównymi zainteresowanymi (25)
- 1.1.1. Architektura i jej wpływ na głównych zainteresowanych (25)
- 1.1.2. Perspektywy architektoniczne (26)
- 1.1.3. Języki opisu architektury (31)
- 1.2. Architektura jako forma ukazania najwcześniejszych decyzji projektowych (32)
- 1.2.1. Style architektur (34)
- 1.3. Architektura jako możliwa do wielokrotnego wykorzystania i przenoszenia abstrakcja systemu (35)
- 1.4. Podsumowanie (36)
- 1.5. Dalsza lektura (36)
- 1.6. Pytania dyskusyjne (38)
2 Ocena architektury oprogramowania (39)
- 2.1. Cele dokonywania oceny architektury (43)
- 2.2. Moment dokonywania oceny architektury (44)
- 2.3. Zainteresowane strony (46)
- 2.4. Rezultaty procesu oceny architektury (47)
- 2.5. Właściwości, pod względem których architektura może podlegać ocenie (50)
- 2.6. Przyczyny dużej niejasności analiz atrybutów jakościowych (53)
- 2.7. Wyniki ewaluacji architektury oprogramowania (54)
- 2.7.1. Wyniki metod ATAM, SAAM oraz ARID (54)
- 2.7.2. Wyniki zwiÄ…zane tylko z metodÄ… ATAM (56)
- 2.8. Korzyści oraz koszta związane z przeprowadzaniem ewaluacji architektury (57)
- 2.9. Dalsza lektura (62)
- 2.10. Pytania dyskusyjne (63)
3 ATAM - metoda ewaluacji architektury (65)
- 3.1. Ogólny opis etapów metody ATAM (66)
- 3.2. Szczegółowy opis etapów metody ATAM (67)
- 3.2.1. Etap 1.: prezentacja metody ATAM (67)
- 3.2.2. Etap 2.: prezentacja biznesowych czynników motywujących (68)
- 3.2.3. Etap 3.: prezentacja architektury (68)
- 3.2.4. Etap 4.: identyfikacja stosowanych podejść architektonicznych (69)
- 3.2.5. Etap 5.: utworzenie drzewa użyteczności atrybutów jakościowych (71)
- 3.2.6. Etap 6.: analiza metod architektonicznych (78)
- 3.2.7. Etap 7.: "burza mózgów" i nadanie scenariuszom priorytetów (81)
- 3.2.8. Etap 8.: analiza metod architektonicznych (89)
- 3.2.9. Etap 9.: prezentacja rezultatów (90)
- 3.3. Fazy metody ATAM (93)
- 3.3.1. Działania fazy 0. (93)
- 3.3.2. Działania fazy 1. (97)
- 3.3.3. Działania fazy 2. (98)
- 3.3.4. Działania fazy 3. (101)
- 3.4. Dalsza lektura (105)
- 3.5. Pytania dyskusyjne (106)
4 System kierowania polem walki - pierwsza analiza przypadku dla metody ATAM (107)
- 4.1. Czynności przygotowawcze (107)
- 4.2. Faza 1. (108)
- 4.2.1. Etap 1.: przedstawienie metody ATAM (108)
- 4.2.2. Etap 2.: przedstawienie wyznaczników działania (109)
- 4..2.3. Etap 3.: prezentacja architektury systemu (109)
- 4.2.4. Etap 4.: identyfikacja rozwiązań strukturalnych (109)
- 4.2.5. Etap 5.: utworzenie drzewa atrybutów użyteczności (110)
- 4.2.6. Etap 6.: analiza rozwiązań architektury systemu (112)
- 4.3. Faza 2. (120)
- 4.3.1. Etap 7.: "burza mózgów" i określenie priorytetów scenariuszy (120)
- 4.3.2. Etap 8.: analiza podejść architektonicznych (122)
- 4.3.3. Etap 9.: prezentacja rezultatów (122)
- 4.4. Rezultaty procesu ewaluacji systemu BCS (123)
- 4.4.1. Dokumentacja (123)
- 4.4.2. Wymagania (126)
- 4.4.3. Punkty wrażliwości i kompromisowe (126)
- 4.4.4. Zagrożenia dla architektury (126)
- 4.5. Podsumowanie (127)
- 4.6. Pytania dyskusyjne (127)
5 Istota atrybutów jakościowych (129)
- 5.1. Charakterystyki atrybutów jakościowych (130)
- 5.1.1. Wydajność (131)
- 5.1.2. Dostępność (135)
- 5.1.3. Modyfikowalność (137)
- 5.1.4. Pytania sugerowane przez charakterystyki (140)
- 5.2. Wykorzystanie charakterystyk atrybutów jakościowych w metodzie ATAM (141)
- 5.3. Style architektoniczne oparte na atrybutach (143)
- 5.4. Podsumowanie (144)
- 5.5. Dalsza lektura (145)
- 5.6. Pytania dyskusyjne (145)
6 Analiza przypadku wykorzystania metody ATAM (147)
- 6.1. TÅ‚o ewaluacji (148)
- 6.2. Faza 0.: kwestie umowy i sprawy przygotowawcze (149)
- 6.2.1. Faza 0., etap 1.: prezentacja metody ATAM (150)
- 6.2.2. Faza 0., etap 2.: opis systemu kandydujÄ…cego (152)
- 6.2.3. Faza 0., etap 3.: podjęcie decyzji o kontynuowaniu lub zaprzestaniu dalszych prac (154)
- 6.2.4. Faza 0., etap 4.: wynegocjowanie harmonogramu prac (156)
- 6.2.5. Faza 0., etap 5.: utworzenie zespołu ewaluacyjnego (158)
- 6.2.6. Faza 0., etap 6.: przeprowadzenie wstępnego spotkania zespołu ewaluacyjnego (161)
- 6.2.7. Faza 0., etap 7.: przygotowanie do fazy 1. (164)
- 6.2.8. Faza 0., etap 8.: dokonanie przeglÄ…du architektury (167)
- 6.3. Faza 1.: Ewaluacja wstępna (169)
- 6.3.1. Faza 1., etap 1.: prezentacja metody ATAM (170)
- 6.3.2. Faza 1., etap 2.: prezentacja wyznaczników działania (173)
- 6.3.3. Faza 1., etap 3.: prezentacja architektury (178)
- 6.3.4. Faza 1., etap 4.: identyfikacja podejść architektonicznych (183)
- 6.3.5. Faza 1., etap 5.: utworzenie drzewa użyteczności atrybutów jakościowych (186)
- 6.3.6. Faza 1., etap 6.: analiza podejść architektonicznych (193)
- 6.4. Przerwa między fazą 1. a fazą 2. (204)
- 6.5. Faza 2.: ewaluacja szczegółowa (204)
- 6.5.1. Faza 2., etap 0.: przygotowanie do fazy 2. (205)
- 6.5.2. Faza 2., etapy od 1. do 6. (207)
- 6.5.3. Faza 2., etap 7.: "burza mózgów" i nadanie scenariuszom priorytetów (208)
- 6.5.4. Faza 2., etap 8.: analiza podejść architektonicznych (216)
- 6.5.5. Faza 2., etap 9.: prezentacja rezultatów (220)
- 6.6. Faza 3.: Działania uzupełniające (223)
- 6.6.1. Faza 3., etap 1.: utworzenie raportu końcowego (223)
- 6.6.2. Faza 3., etap 2.: przeprowadzenie spotkania końcowego (224)
- 6.6.3. Faza 3., etap 3.: utworzenie teczki i aktualizacja repozytoriów danych (227)
- 6.7. Dalsza lektura (229)
- 6.8. Pytania dyskusyjne (230)
7 Wykorzystanie metody SAAM w ewaluacji przykładowej architektury (231)
- 7.1. PrzeglÄ…d metody SAAM (232)
- 7.1.1. Dane wejściowe ewaluacji opartej na metodzie SAAM (232)
- 7.1.2. Dane wyjściowe ewaluacji opartej na metodzie SAAM (233)
- 7.2. Etapy ewaluacji opartej na metodzie SAAM (234)
- 7.2.1. Etap 1.: opracowanie scenariuszy (234)
- 7.2.2. Etap 2.: opisanie architektur(y) (236)
- 7.2.3. Etap 3.: sklasyfikowanie i nadanie priorytetów scenariuszom (237)
- 7.2.4. Etap 4.: indywidualna ocena scenariuszy pośrednich (238)
- 7.2.5. Etap 5.: określenie interakcji scenariuszy (238)
- 7.2.6. Etap 6.: utworzenie ewaluacji ogólnej (239)
- 7.3. Przykładowy program dzienny procesu ewaluacji metodą SAAM (240)
- 7.4. Analiza przypadku zastosowania metody SAAM (241)
- 7.4.1. PrzeglÄ…d systemu ATAT (242)
- 7.4.2. Etap 1.: opracowanie scenariuszy, pierwsze przejście (243)
- 7.4.3. Etap 2.: opis architektur(y), pierwsze przejście (243)
- 7.4.4. Etap 1.: opracowanie scenariuszy, drugie przejście (245)
- 7.4.5. Etap 2.: opis architektur(y), drugie przejście (246)
- 7.4.6. Etap 3.: sklasyfikowanie i nadanie priorytetów scenariuszom (248)
- 7.4.7. Etap 4.: indywidualna ewaluacja scenariuszy pośrednich (249)
- 7.4.8. Etap 5.: określenie interakcji scenariuszy (249)
- 7.4.9. Etap 6.: utworzenie ewaluacji ogólnej - rezultaty i zalecenia (253)
- 7.5. Podsumowanie (256)
- 7.6. Dalsza lektura (256)
- 7.7. Pytania dyskusyjne (256)
8 ARID - metoda ewaluacji architektur częściowych (259)
- 8.1. Czynne przeglądy projektów (260)
- 8.2. ARID: Hybryda metod ADR i ATAM (262)
- 8.3. Etapy metody ARID (263)
- 8.3.1. Faza 1.: próba (263)
- 8.3.2. Faza 2.: przeglÄ…d (264)
- 8.4. Analiza przypadku zastosowania metody ARID (266)
- 8.4.1. Przeprowadzenie działań poszczególnych etapów (267)
- 8.4.2. Rezultaty działań (269)
- 8.5. Podsumowanie (270)
- 8.6. Dalsza lektura (270)
- 8.7. Pytania dyskusyjne (271)
9 Porównanie metod ewaluacji architektur oprogramowania (273)
- 9.1. Techniki pytajÄ…ce (274)
- 9.1.1. Kwestionariusze i listy kontrolne (275)
- 9.1.2. Scenariusze i metody oparte na scenariuszach (278)
- 9.2. Techniki pomiarowe (280)
- 9.2.1. Miary (281)
- 9.2.2. Symulacje, prototypy i eksperymenty (282)
- 9.2.3. Analiza o stałym tempie (283)
- 9.2.4. Zautomatyzowane narzędzia i języki opisu architektur (283)
- 9.3. Techniki hybrydowe (284)
- 9.3.1. Inżynieria wydajności oprogramowania (284)
- 9.3.2. Metoda ATAM (285)
- 9.4. Podsumowanie (285)
- 9.5. Dalsza lektura (290)
- 9.6. Pytania dyskusyjne (290)
10 Rozwijanie możliwości dokonywania ewaluacji architektur we własnym przedsiębiorstwie (291)
- 10.1. Budowanie organizacyjnego zaangażowania (291)
- 10.2. Zwiększanie grona oceniających (292)
- 10.3. Tworzenie zasobów zbiorczych (293)
- 10.3.1. Dane o kosztach i korzyściach (294)
- 10.3.2. Wskazówki dotyczące metod (295)
- 10.3.3. Elementy możliwe do wielokrotnego wykorzystania (299)
- 10.4. Podsumowanie (300)
- 10.5. Pytania dyskusyjne (301)
11 Wnioski (303)
- 11.1. Można zaczynać! (303)
- 11.2. Poznane metody (304)
- 11.3. Zasadność dokonywania ewaluacji architektur (305)
- 11.4. Przyczyny skuteczności metody ATAM (306)
- 11.5. Uwagi końcowe (312)
A Przykład stylu architektonicznego opartego na atrybutach (313)
- A.1. Opis problemu (313)
- A.2. Bodziec-odpowiedź (314)
- A.3. Styl architektoniczny (314)
- A.4. Analiza (314)
- A.4.1. Rozumowanie (315)
- A.4.2. Przypisanie priorytetów (316)
- A.4.3. Inwersja priorytetów (316)
- A.4.4. Czas blokowania (317)
- A.5. Dalsza lektura (318)
Bibliografia (319)
Skorowidz (323)