
Przygotuj projekt systemu informatycznego,
który naprawdę spełni oczekiwania użytkowników
- Wybierz technologię, platformę sprzętową i model licencjonowania
- Zadbaj o funkcjonalność i łatwość rozbudowy systemu
- Zabezpiecz system przed piractwem, kradzieżą i utratą danych
Termin "architektura oprogramowania" kojarzy się zwykle z doborem języka programowania, wzajemnymi zależnościami między komponentami powstającego systemu informatycznego, wyborem platformy bazodanowej i zaplanowaniem innych elementów związanych wyłącznie z zagadnieniami technicznymi. Tymczasem w opisie architektury systemu nie wolno pomijać także innych kwestii: modelu licencjonowania, sposobu wdrażania i konserwacji systemu, a przede wszystkim jego użyteczności. Te pozornie niezwiązane z projektem elementy mogą mieć duży wpływ na powodzenie przedsięwzięcia, jakim jest stworzenie i sprzedaż oprogramowania. Odpowiednio przygotowany projekt systemu informatycznego powinien więc obejmować zarówno zagadnienia techniczne, jak i ekonomiczne.
Książka "Więcej niż architektura oprogramowania" to poradnik, dzięki któremu stworzenie odpowiedniej relacji między technologią a biznesem jest łatwiejsze, niż mogłoby się wydawać. Może się przydać zarówno menedżerowi, jak i programiście. Autor książki, doświadczony kierownik projektów i twórca oprogramowania, przedstawia związki między zagadnieniami technicznymi a innymi aspektami. Znajdziesz w niej opisy dobrych i skutecznych rozwiązań oraz zaczerpnięte z rynku przykłady planowania produkcji oprogramowania.
- Znaczenie architektury oprogramowania
- Zarządzanie oprogramowaniem jako produktem
- Modele licencjonowania
- Wykorzystywanie obcych technologii w projekcie
- Wdrażanie systemu
- Obsługa techniczna
- Dobór marki
- Funkcjonalność i łatwość obsługi
- Zabezpieczanie aplikacji
Sprawy z pozoru mało ważne często powodują największe problemy. Nie ignoruj ich. Pracuj nad projektem kompleksowo.
Przedmowa Martina Fowlera (13)Przedmowa Guya Kawasaki (15)
Wstęp (17)
1. Architektura oprogramowania (21)
- Definicja architektury oprogramowania (21)
- Inne spojrzenia na architekturę oprogramowania (22)
- Znaczenie architektury oprogramowania (24)
- Tworzenie architektury (27)
- Wzorce i architektura (28)
- Ewolucja i dojrzewanie architektury - funkcje a możliwości (29)
- Opieka nad architekturą (32)
- Ogólne zasady (36)
- Pełne zrozumienie architektury (38)
- Zespół (39)
- Podsumowanie rozdziału (40)
- Czym jest zarządzanie produktem? (43)
- Znaczenie zarządzania produktem (44)
- Proces tworzenia produktu - do wersji 1.0 (44)
- Wcale tak nie jest (50)
- Biznesplan (53)
- Proces tworzenia produktu - wersja n.n.n (53)
- Wspomaganie procesu tworzenia produktu (55)
- Zarządzanie produktem - najważniejsze pojęcia (57)
- Podsumowanie rozdziału (64)
- Jaki jest podział odpowiedzialności? (67)
- Siły działające na początku projektu (68)
- Praca w długim okresie i wyniki w krótkim okresie (72)
- Wizja przyszłości (73)
- Zarządzanie informacjami zwrotnymi (74)
- Budowanie przejrzystości (74)
- Jednomyślność działań (76)
- Diagramy kontekstowe i produkty docelowe (78)
- Podsumowanie rozdziału (79)
- Typowe modele biznesowe oprogramowania (82)
- Prawa licencjobiorcy (92)
- Wpływ modelu biznesowego na t-architekturę (95)
- Stosowanie modeli licencjonowania (99)
- Dojrzałość rynku a model biznesowy (104)
- Podsumowanie rozdziału (106)
- Licencjonowanie - zagrożenia i korzyści (109)
- Umowa (112)
- Niezgodność modeli biznesowych i negocjacje (117)
- Honorowanie umów licencyjnych (118)
- Włączanie technologii licencjonowanej (119)
- Licencjonowanie Open Source (119)
- Opłaty licencyjne (120)
- Ekonomika licencjonowania (122)
- Podsumowanie rozdziału (122)
- Rzekome korzyści z wieloplatformowości (125)
- Uzasadnienie biznesowe wieloplatformowości (126)
- Tworzenie aplikacji wieloplatformowej (129)
- Macierz trudów pracy (131)
- Niebezpieczne obietnice (135)
- Podsumowanie rozdziału (135)
- Rodzaje architektury wdrożeniowej (137)
- Wpływ klienta (140)
- Wpływ rodzimej organizacji (142)
- Wybór architektury wdrożeniowej (145)
- Architektury wdrożeniowe i podział pracy (146)
- Urządzenia informatyczne typu IA (147)
- Wpływ na architekturę oprogramowania (147)
- Przyszłość oprogramowania powszechnego użytku (149)
- Podsumowanie rozdziału (149)
- Kontrola w rękach klienta, czyli siła przewodnia (151)
- Architektura warstwowa - struktury logiczne (153)
- Projektowanie i implementacja architektury warstwowej (157)
- Integracja i rozbudowa warstw logiki biznesowej (159)
- Integrowanie i rozbudowa magazynu danych (164)
- Konsekwencje natury biznesowej (168)
- Interfejs API a kolejne wersje (174)
- Podsumowanie rozdziału (175)
- Elementy marki (177)
- Marki produktów licencjonowanych (182)
- Dostosowywanie elementów marki (182)
- Zmiana elementów marki (183)
- Podsumowanie rozdziału (185)
- Funkcjonalność = pieniądze (187)
- Modele myślowe, metafory i funkcjonalność (189)
- Wpływ t-architektury na interfejs użytkownika (190)
- Szybciej, wyżej, mocniej (196)
- Podsumowanie rozdziału (203)
- Wyjmij z pudełka i rozpocznij pracę (205)
- Au! Może boleć (207)
- Instalacja a architektura (208)
- Jak instalować (210)
- Ostatnie szlify (214)
- Podsumowanie rozdziału (216)
- Jak instalacja, tyle że gorsza (219)
- Mniej kłopotliwe uaktualnienie (222)
- Aktualizacje a dojrzałość rynku (225)
- Podsumowanie rozdziału (226)
- Konfigurowalność - element funkcjonalności (229)
- Kontekst systemu (230)
- W trakcie inicjalizacji i w trakcie pracy (231)
- Ustawianie wartości (232)
- Ustawianie właściwej wartości (233)
- Ogólne zasady pracy z parametrami (234)
- Podsumowanie rozdziału (235)
- Chcę wiedzieć, co jest grane (238)
- Nie tylko fakty (239)
- Format i zarządzanie dziennikiem (241)
- Przetwarzanie danych dziennika (245)
- Usługi rejestrowania (245)
- Podsumowanie rozdziału (246)
- Tak, to jest potrzebne (249)
- Nasz punkt wyjścia (250)
- Zarządzanie wersjami (251)
- Identyfikacja wersji (252)
- Oznaczenia SKU i numery seryjne (257)
- Zarządzanie wersjami a t-architektura (260)
- Podsumowanie rozdziału (262)
- Wirusy, hakerzy i piraci (264)
- Zarządzanie cyfrową tożsamością (266)
- Bezpieczeństwo transakcji (269)
- Bezpieczeństwo oprogramowania (271)
- Bezpieczeństwo informacji (273)
- Ukrywanie algorytmów czy ukrywanie kluczy? (274)
- Tylne wejście (274)
- Bezpieczeństwo i m-architektura (275)
- Podsumowanie rozdziału (277)
- Identyfikacja (281)
- Programowanie (281)
- Zapewnienie jakości (281)
- Publikacje techniczne (282)
- Produkt (282)
- Przekaz informacji - usługi (282)
- Przekaz informacji - sprzedaż i dystrybucja (282)
- Przekaz informacji - pomoc techniczna (283)
- Przygotowanie dystrybucji (283)
- Stosowanie wzorców (285)
- Prezentacja wyników (287)
- Mapa rynku (287)
- Wydarzenia i rytmy rynku (289)
- Mapa funkcji i korzyści (291)
- Plan rozwoju t-architektury (292)
Literatura (297)
O autorze (301)
Skorowidz (303)