ICONIX komponentowo zorientowany zwinny standard analizy i projektowania

Wprowadzenie O podobnej porze roku, w 2015 roku pisałem: W ICONIX moż­na z powo­dze­niem sto­so­wać ​„czy­sty” UML źr.: : ICONIX and Use Case Driven Object Modeling with UML - Jarosław Żeliński IT-Consulting ICONIX to w zasadzie standard komponentowego, zorientowanego obiektowo, na przypadki użycia i interfejsy komponentów, procesu projektowania oprogramowania . Jest to od samego początku swojego istnienia, metoda klasyfikowana jako zwinna . Orientacja na Przypadki Użycia (use case driven) to obecnie kanon projektowania . Coraz popularniejszy wzorzec jakim są mikroserwisy staje się "normą" w projektowaniu architektury . Od samego początku ICONIX…

Czytaj dalejICONIX komponentowo zorientowany zwinny standard analizy i projektowania

MVC a etapy projektowania aplikacji HLD i LLD – Czym jest Architektura Systemu

Wstęp W 2017 roku pisałem dość ogólnie o logice wzorca architektonicznego MVC kończąc artykuł słowami: A gdzie mitycz­na baza danych? Tam gdzie jej miej­sce: zarzą­dza dany­mi utrwa­la­ny­mi w pamię­ci. Baza danych i sys­te­my zarzą­dza­nia dany­mi w archi­tek­tu­rze obiek­to­wej nie sta­no­wią miej­sca na logi­kę biz­ne­so­wą, stan­dar­do­wym wzor­cem pro­jek­to­wym jest tu acti­ve records. Podstawową zale­tą sto­so­wa­nie tego wzor­ca jest sepa­ra­cja utrwa­lo­nych danych od apli­ka­cji. To pozwa­la sku­pić całą logi­kę i jej zmien­ność w kodzie apli­ka­cji i jego archi­tek­tu­rze. Dzięki temu moż­na speł­nić zasa­dę Open Close prin­ci­pia bez refak­to­rin­gu bazy danych i migra­cji danych, co mia­ło by miej­sce gdy­by była to jed­no­li­ta…

Czytaj dalejMVC a etapy projektowania aplikacji HLD i LLD – Czym jest Architektura Systemu

ICONIX and Use Case Driven Object Modeling with UML

Tym razem recen­zje dwóch ksią­żek w jed­nym wpisie:

  1. Agile Development with ICONIX Process. People, Process, and Pragmatism. By Doug Rosenberg , Mark Collins-Cope, Matt Stephens
  2. Use Case Driven Object Modeling with UML. Theory and Practice. 2nd Edition. By Doug Rosenberg , Matt Stephens

Pierwsza wyda­na w 2005 roku, dru­ga 2013 r. Pierwsza meto­dę ICONIX opi­su­je na przy­kła­dach, w kon­tek­ście zwin­nych metod, pro­ces pro­jek­to­wa­nia i two­rze­nia opro­gra­mo­wa­nia bazu­ją­cy na mode­lach. Są to:

  1. Model przy­pad­ków uży­cia spe­cy­fi­ku­ją­cy wyma­ga­ne zacho­wa­nia aplikacji.
  2. Dziedzinowy model pojęciowy 
  3. Model dzie­dzi­ny (archi­tek­tu­ra).
  4. Robustness dia­gram” abs­trak­cyj­ny model zacho­wa­nia bazu­ją­cy na jed­no­znacz­nych tyl­ko biz­ne­so­wych poję­ciach (dia­gram komunikacji).
  5. Diagram sekwen­cji obra­zu­ją­cy zacho­wa­nia się ele­men­tów archi­tek­tu­ry sys­te­mu w toku reali­za­cji sce­na­riu­szy przy­pad­ków użycia. 
(wię­cej…)

Czytaj dalejICONIX and Use Case Driven Object Modeling with UML

Bo najważniejsi Panie są Aktorzy…

Bardzo często spotykam się z projektami, w których użytkownicy narzekają na dostawcę oprogramowania, uważają że program nie całkiem spełnia ich oczekiwania (wymagania podpisali... ale to nie rozwiązuje tego problemu). Problem polega na często spotykanym podejściu: analiza wymagań tylko w postaci wywiadów i w konsekwencji niepełne zrozumienie specyfiki biznesowej oraz fakt, że developer ma skłonności do uproszczeń i "normalizacji". Innym, moim zdaniem jeszcze gorszym podejściem, jest rozpoczęcie kodowania jeszcze w trakcie trwania wywiadów i tworzenie oprogramowania metodą codziennych, lub co tygodniowych spotkań z użytkownikiem opisującym kolejne aspekty systemu. Zbyt późne odkrywanie (a nie raz nawet niedostrzeganie tego), tego że pewne rzeczy są 'tymi samymi rzeczami" ale w innych kontekstach, prowadzi do bardzo wielu problemów z implementacją. Ale po kolei.

Czytaj dalejBo najważniejsi Panie są Aktorzy…

Wzorzec analityczny Boundary Control Entity i ICONIX a także MVC i MVVM

Opisywałem ostatnio wzorzec DDD jako narzędzie dokumentowania analizy. Faktycznie, czytelnicy mają wiele racji, jest on dość "bliski implementacji". Niejednokrotnie "lepszym pomysłem" jest opis logiki systemu na nieco wyższym poziomie abstrakcji pozostawiając tym samym więcej swobody developerowi. [...] Nieco inne podejście, to które stosuję obecnie, opisuję poniżej. Zachowując podstawowe znaczenia tych trzech klas, dostosowałem je do wzorca MVVC. Jest to o tyle wygodne i ważne, że stosowanie wzorca BCE wyłącznie do modelowania logiki biznesowej wymaga zachowania hermetyzacji komponentu Model. W takim układzie boundary nie będzie elementem komponentu View a Modelu. Jego rola to stworzenie dedykowanego interfejsu do model np. pomiędzy komponentem View lub Controlerem. Dzięki temu możliwe jest stworzenie odrębnego interfejsu dla View na duży ekran i odrębnego dla View na np. małych ekranach smartfonów. Tak więc jest moim zdaniem droga do modelowania wymagań metodą "tak to ma działać" a nie tylko "tak to ma wyglądać", bo to drugie jest przyczyną wielu problemów...

Czytaj dalejWzorzec analityczny Boundary Control Entity i ICONIX a także MVC i MVVM

Koniec treści

Nie ma więcej stron do załadowania