ICONIX jako zwinny proces projektowania oprogramowania z użyciem UML

Ten często aktualizowany przeze mnie wpis, stał się niemalże kompletnym opisem metodyki projektowania oprogramowania. Nie jest to moja metodyka, to metodyka z której ja także korzystam. Artykuł zaopatrzyłem w bogaty spis literatury źródłowej i kilka ciekawych referatów konferencyjnych. Polecam szczególnie moim studentom oraz obecnym i potencjalnym klientom, bo to opis produktu jaki ode mnie dostaną (polecam także wpis: Moja rola w projektach). Programming is not solely about constructing software—programming is about designing software. [Programowanie nie polega wyłącznie na tworzeniu oprogramowania - programowanie polega na projektowaniu oprogramowania.] Wprowadzenie Opisany tu proces…

Czytaj dalejICONIX jako zwinny proces projektowania oprogramowania z użyciem UML

Czym jest PIM czyli kto jest programistą

Ten artykuł jest adresowany do wszystkich. Biznes (prawnicy także) może przekonać się, że oprogramowanie można narysować i zrozumieć. Analitycy i programiści, że to możliwe, a deweloperzy, że nikt im nie odbiera pracy a raczej pomaga. Wprowadzenie W dzisiejszym świecie inżynierii największą wartość mają czas i zasoby. Czas to jak najszybsze oddanie rozwiązania (produktu) do użytku (szybka komercjalizacja), zasoby to koszt jakim się to odbędzie. Kluczem są koszty: "time to market", tu kosztem jest opóźnienie komercjalizacji (niezrealizowane przychody), kosztem jest także samo powstawania oprogramowania. Praktycznie od początku inżynierii oprogramowania zależność kosztów…

Czytaj dalejCzym jest PIM czyli kto jest programistą
Read more about the article Modelowanie systemów – organizacja jako mechanizm
Friedenthal, S., Moore, A., & Steiner, R. (2015). A practical guide to SysML: The systems modeling language (Third edition). Elsevier, MK, Morgan Kaufmann is an imprint of Elsevier. https://www.sciencedirect.com/book/9780128002025/a-practical-guide-to-sysml

Modelowanie systemów – organizacja jako mechanizm

Wprowadzenie Pojęcie 'system' stało się bardzo popularne, głównie za sprawą "systemów informatycznych", jednak jego rodowód jest starszy i pochodzi nie od technologii a od biologii . Poza IT mamy systemy bezpieczeństwa, system ubezpieczeń, system emerytalny, system prawa, i wiele innych. Słownik języka polskiego podaje taką definicję pojęcia system: układ elementów mający określoną strukturę i stanowiący logicznie uporządkowaną całość zespół wielu urządzeń, dróg, przewodów itp., funkcjonujących jako całość narządy lub inne części żywego organizmu pełniące razem określoną funkcję uporządkowany zbiór twierdzeń, poglądów, tworzących jakąś teorię określony sposób wykonywania jakiejś czynności lub…

Czytaj dalejModelowanie systemów – organizacja jako mechanizm

Diagram Przypadków Użycia UML – aktor jako persona

Wstęp W niedawno napisanym artykule na temat przypadków użycia i ich definicji zgodnej z UML, wskazywałem między innymi, że: Przypadki uży­cia są spo­so­bem na uchwy­ce­nie [wska­za­nie] wyma­gań sta­wia­nych sys­te­mom, tzn. tego, co sys­te­my mają robić [powo­dy, dla któ­rych one powsta­ną, co będą reali­zo­wa­ły] na rzecz i na żąda­nie Aktora. źr.: Diagram Przypadków Użycia UML - Jarosław Żeliński IT-Consulting Sama specyfikacja UML o aktorze, jako elemencie wokół systemu, mówi bardzo niewiele, poza rozdziałem dotyczącym przypadków użycia: Przypadki użycia są sposobem na uchwycenie wymagań systemów, czyli tego, co systemy mają robić. Kluczowymi pojęciami…

Czytaj dalejDiagram Przypadków Użycia UML – aktor jako persona

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

W perspektywie krótkoterminowej architektura oprogramowania pomaga zredukować czas i koszty rozwoju.W dłuższej perspektywie architektura oprogramowania pomaga zredukować koszty utrzymaniu. https://medium.com/@learnwithwhiteboard_digest/basics-of-software-architecture-a-guide-for-developers-8098a76881ca 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…

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

Trendy czyli DIGIT Expo w Edynburgu

Tym razem króciutko: Wczoraj byłem na #digitexpo w Edynburgu (Digit-Expo). Głównie firmy z UK ale też i międzynarodowe: dostawcy urządzeń sieciowych i usług chmurowych. Generalnie widać, że IT idzie w stronę "utility": nie rozumiesz ale używasz bo wiesz do czego to służy (ale nie koniecznie jak działa). Da się zaobserwować to, że producenci dostarczają specjalizowane klocki lego, na targach bardzo mało integratorów (ale było kilku). Kiedyś na pytanie "Co robisz" padła by odpowiedź: "liczę [coś]", dzisiaj w znakomitej większości pada odpowiedź: "używam kalkulatora". Odchodzi czas monolitów, nadchodzi czas powszechnej integracji.…

Czytaj dalejTrendy czyli DIGIT Expo w Edynburgu

Jakie przypadki użycia ma poczta a jakie szafa grająca

Myślenie systemowe Najprostsze rzeczy bywają najtrudniejsze w modelowaniu, powodem jest ich "pozorna" prostota. Na wielu uczelniach na świecie zaczęły sie pojawiać studia podyplomowe i szkolenia o wdzięcznym tytule "Myślenie systemowe" (System Thinking, np. to na MIT), ich celem jest kształtowanie myślenia zorientowanego na postrzeganie świata jako systemu czyli mechanizmu złożonego z współpracujących obiektów. Tu pojawia się stosowane w nauce pojęcie "mechanizm" . Po co i kiedy używamy tego pojęcia? "Mechanizmów poszukuje się w celu wyjaśnienia, jak powstaje jakieś zjawisko lub jak działa jakiś istotny proces." . Innymi słowy analizując lub…

Czytaj dalejJakie przypadki użycia ma poczta a jakie szafa grająca

Zasada 25% w wycenie własności intelektualnych

Wstęp Temat licencjonowania i wyceny wartości oprogramowania przewija się często w moich projektach. Bywam nie raz proszony o wycenę posiadanego oprogramowania co, jak nie trudno się domyśleć, nie jest proste. Powszechnym zjawiskiem jest zawyżanie lub zaniżanie tej wartości, zależnie od tego do czego wynik wyceny zostanie użyty. Tam gdzie przedmiotem wyceny są posiadane aktywa, wyceny są często zawyżane przez sprzedającego udziały a zaniżane przez ich nabywcę. Bardzo często podejmowane są próby bazowania na cenach transakcyjnych, jednak są to wyceny obarczone przypadkowością, gdyż są to tak naprawdę wyceny spekulacyjne, obarczone wpływem…

Czytaj dalejZasada 25% w wycenie własności intelektualnych

Jak wyjść z długu technologicznego jakim jest centralny monolityczny system ERP

Na temat tego jakim uciążliwym długiem technologicznym jest monolityczny system napisano wiele, dzisiaj kolejne dwie ciekawe pozycje literatury: CMMI Compliant Modernization Framework to Transform Legacy Systems oraz Practical Event-Driven Microservices Architecture: Building Sustainable and Highly Scalable Event-Driven Microservices . Pierwsza publikacja opisuje metodę zaplanowania wyjścia z długu technologicznego z perspektywy analizy biznesowej, druga opisuje możliwą realizację techniczną z perspektywy architektury aplikacji i ewolucyjnej migracji z architektury monolitycznej do komponentowej (mikro-serwisy). Czym jest monolit? Jest to system, którego architektura stanowi jeden niepodzielny blok realizujący funkcje biznesowe. Kluczową cechą i zarazem wadą,…

Czytaj dalejJak wyjść z długu technologicznego jakim jest centralny monolityczny system ERP
Model systemu służy do określenia składników systemu.
Friedenthal, S., Moore, A., & Steiner, R. (2015). A practical guide to SysML: the systems modeling language (Third edition). Elsevier, MK, Morgan Kaufmann is an imprint of Elsevier. https://www.sciencedirect.com/book/9780128002025/a-practical-guide-to-sysml

Modelowanie produkcji

Nie używamy notacji BPMN do modelowania tego co się dzieje na produkcji. Skoro nie BPMN to czego używamy? Wprowadzenie Analityczne modele BPMN to łańcuchy aktywności reprezentujących procedury oraz ich produkty czyli dokumenty (dane). Na tych modelach aktywność to abstrakcja reprezentująca (całą) pracę, której efekt (wynik) jest prezentowany jako treść (DataObject), czyli aktywność kopania rowu kończy się pisemnych stwierdzeniem, że rów wykopano, z ewentualnym opisem parametrów tego rowu (patrz specyfikacja BPMN i definicja atomowej aktywności w procesach ). A gdzie dokładny opis machania łopatą albo obsługi koparki? Ten opis to procedura,…

Czytaj dalejModelowanie produkcji

Ontologia – zastosowanie w inżynierii oprogramowania

Ontologia jako narzędzie tworzenia "modeli świata", jest bardzo dobrym narzędziem do projektowania danych, zorganizowanych - w łatwe do zarządzania w bazach NoSQL - dokumenty. Wstęp Niedawno napisałem: Czy opra­co­wa­nie onto­lo­gii jest łatwe? Nie, nie jest. Czy zła onto­lo­gia szko­dzi? Tak, potra­fi dopro­wa­dzić do fia­ska pro­jek­tu infor­ma­tycz­ne­go. źr.;: Ontologia czyli jak się to robi Po co to wszystko? Obecnie często mówimy o Big Data, czyli o masowo gromadzonych danych. Ich gromadzenie wymaga opracowania struktury ich gromadzenia i zarządzania nimi, bez tego powstanie "stos nieskatalogowanych dokumentów". Proces gromadzenia danych jest stratny, więc…

Czytaj dalejOntologia – zastosowanie w inżynierii oprogramowania

Ontologia czyli jak się to robi

Wiele problemów w projektach informatycznych, to skutki źle zbudowanej ontologii lub jej braku w projekcie. Niemal co druga firma (46 proc. badanych przez AIIM, 2022) ocenia, że przeciwdziałanie chaosowi informacyjnemu wewnątrz ich organizacji ?wypada słabo? lub ?wymaga poprawy?. Obecnie większość przetwarzanych w firmach treści to treści częściowo lub nawet całkowicie nieustrukturyzowane. Zarzadzanie nimi wymaga nowych metod . [toc] Czym jest ontologia Ontologia jest często nazywana reprezentacją wiedzy. Pozostaje pytanie co jest tu tą wiedzą? Czy wiedzą jest to co oznacza w określonym języki (tu polskim) słowo "samochód", czy wiedzą jest…

Czytaj dalejOntologia czyli jak się to robi

Koniec treści

Nie ma więcej stron do załadowania